如何在 sas 中执行内连接(带有示例)
您可以使用以下基本语法在 SAS 中对两个数据集执行内连接:
proc sql ;
create table final_table as
select * from data1 as x join data2 as y
on x.ID = y.ID;
quit ;
以下示例展示了如何在实践中使用此语法。
示例:SAS 中的内连接
假设我们在 SAS 中有以下两组数据:
/*create datasets*/
data data1;
input team $points;
datalines ;
Mavs 99
Spurs 93
Rockets 88
Thunder 91
Warriors 104
Cavs 93
Nets 90
Hawks 91
;
run ;
data data2;
input team $rebounds;
datalines ;
Mavs 21
Spurs 18
Warriors 27
Hawks 29
Knicks 40
Raptors 30
;
run ;
/*view datasets*/
proc print data =data1;
proc print data =data2;
请注意,两个数据集共享一个共同变量: team 。
我们将使用以下语法来执行内部联接并创建一个新数据集,该数据集仅包含团队变量出现在两个数据集中的行:
/*perform inner join*/
proc sql ;
create table final_table as
select * from data1 as x join data2 as y
on x.team = y.team;
quit ;
/*view results of inner join*/
proc print data =final_table;
生成的数据集仅包含团队变量出现在两个数据集中的行。
如果您参考前两个数据集,您会发现两个数据集中都只出现了四支球队:小牛队、马刺队、勇士队和老鹰队。
由于我们选择在团队变量上连接两个数据集,因此这四个团队也出现在最终数据集中。
其他资源
以下教程解释了如何在 SAS 中执行其他常见任务: