w********n 发帖数: 33 | 1 有两个数据子集,左边数据变量VarX的某些值是空缺的。
ID Doc# VarX ID Doc# VarY
1 234 abab 1 467 abcd
1 121 1 121 A
1 121 2 789 B
1 112 cdse 3 909 asde
2 789 3 900 asdu
2 234 rtfg ... ... ....
2 345 pgpg
... ... ....
需要把以上左边的数据生成如下格式,把空缺的VarX值从右边的VarY值通过Doc#补充进
来,Doc#值是unique的控制变量,对应唯一的VarX或者VarY。
ID Doc# VarX
1 234 abab
1 121 A
1 121 A
1 112 cdse
2 789 B
2 234 rtfg
2 345 pgpg
...
这个通过sas应该怎么实现啊?多谢多谢~ |
s******r 发帖数: 1524 | 2 data c;
merge a b;by Doc;
if varx='' then var=vary;else var=varx;
drop varx vary;
run;
【在 w********n 的大作中提到】 : 有两个数据子集,左边数据变量VarX的某些值是空缺的。 : ID Doc# VarX ID Doc# VarY : 1 234 abab 1 467 abcd : 1 121 1 121 A : 1 121 2 789 B : 1 112 cdse 3 909 asde : 2 789 3 900 asdu : 2 234 rtfg ... ... .... : 2 345 pgpg : ... ... ....
|
S******y 发帖数: 1123 | 3 PROC SQL
coalesce function |
w********n 发帖数: 33 | 4 十分感谢,请查收包子,喝喝
【在 s******r 的大作中提到】 : data c; : merge a b;by Doc; : if varx='' then var=vary;else var=varx; : drop varx vary; : run;
|