MERGE语句
用merge语句将两个或多个SAS数据集中的观测值横向匹配合并成一个新的数据集的一个观测值。
#语法:
DATA <新数据集名称>;
MERGE <已有数据集列表>;
BY <变量1> [<变量2>…];
RUN;
说明
:
- 匹配合并指来自不同数据集中具有至少一个共同变量(匹配变量),按照匹配变量取相同数值的观测值横向合并;
- 用by语句指定匹配的变量;
- 每一个待合并数据集需先按匹配变量排序。
代码示例
data ma;
input id name$ sex$ age;
cards;
1001 Tom F 25
1003 Lisa M 20
1005 Anna M 26
1002 Lyli M 21
;
proc sort;
by id;
run;
data mb;
input id Language$ score;
cards;
1001 Chinese 85
1001 English 76
1002 Chinese 89
1004 English 90
proc sort;
by id;
run;
data mc;
merge ma mb;
by id;
run;
Title “MERGE合并结果”;
proc print data=mc;
run;