如何在 sas 中执行左连接(带有示例)


您可以使用以下基本语法在 SAS 中对两个数据集执行左连接:

 proc sql;
    create table final_table as
select * from data1 as x left join data2 as y
    on x.ID = y.ID;
quit;

以下示例展示了如何在实践中使用此语法。

相关:如何在 SAS 中执行内部联接

示例:SAS 中的左连接

假设我们在 SAS 中有以下两组数据:

 /*create datasets*/
data data1;
    input team $points;
    datalines ;
Mavs 99
Spurs 93
Rockets 88
Thunder 91
Warriors 104
Cavs 93
Grizzlies 90
Hawks 91
;
run ;

data data2;
    input team $rebounds;
    datalines ;
Mavs 21
Spurs 18
Rockets 22
Warriors 27
Cavs 15
Hawks 29
;
run ;

/*view datasets*/
proc print data =data1;
proc print data =data2; 

请注意,两个数据集共享一个共同变量: team

我们将使用以下语法执行左连接并创建一个新数据集,其中包含data1中的每一行以及data2中与data1中团队名称匹配的行:

 /*perform left join*/
proc sql;
create table final_table as
	select * from data1 as x left join data2 as y
	on x.team = y.team;
quit ;

/*view results of left join*/
proc print data =final_table; 

生成的数据集包含data1中的所有原始团队,但唯一具有反弹列值的团队是也出现在data2中的团队。

其他资源

以下教程解释了如何在 SAS 中执行其他常见任务:

如何标准化 SAS 中的数据
如何在SAS中替换字符串中的字符
SAS中如何用零替换缺失值
SAS中如何删除重复项

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注