SAS数据集关联(SET的特殊用法)

众所周知,SAS DATA step中set可以将两数据集联合效果雷同sql中的union all(当然union all要求两数据集字段相同)set则不同。如下

1、set常规用法:

data temp1;

input a b c;
cards;
1 2 3
1 2 5
1 2 4
1 3 5
1 3 4
1 4 8
;
run;
SAS数据集关联(SET的特殊用法)_第1张图片
data temp2;
input d $2. e;
cards;
a 1
a 2
b 2
c 3
;
run;

data temp3;
set temp1 temp2;
run;

SAS数据集关联(SET的特殊用法)_第2张图片


2、set特殊用法:

多个set是将第二个及以后的数据集合并(或覆盖如果有相同字段最后的set数据集覆盖前面的数据集该字段数据)到第一个数据集后面(有点left join的意思,但是完全不同),并且保留最少的数据集条数为新生成的数据集条数。

同样用前两个数据集temp1和temp2为基础表

data temp4;
set temp1;
set temp2;

run;




你可能感兴趣的:(SAS数据集关联(SET的特殊用法))