SAS中文论坛

标题: 请教高人:怎样有选择的合并两个数据集 [打印本页]

作者: shiyiming    时间: 2009-3-28 15:44
标题: 请教高人:怎样有选择的合并两个数据集
比如:
set A:
a b c 三个变量
set B:
d e 三个变量
两个set的obs数量不同
合并的数据变量为a b c d e,obs数量和A相同
当a=d b=e时 取set B中的e值,否则f取'.' ; c值就是set A中的c值
谢谢
作者: shiyiming    时间: 2009-3-28 15:47
标题: Re: 请教高人:怎样有选择的合并两个数据集
[code:391687lp]
data out;
       set a;
       set b;
       if a=d then f=f;
       else f=.;
run;
[/code:391687lp]
作者: shiyiming    时间: 2009-3-28 16:15
标题: Re: 请教高人:怎样有选择的合并两个数据集
谢谢,不过好像不太对,可能是我没表达清楚,改了一下主题
作者: shiyiming    时间: 2009-3-29 07:46
标题: Re: 请教高人:怎样有选择的合并两个数据集
你这一改,我就完全看不懂了~~~
作者: shiyiming    时间: 2009-3-30 11:35
标题: Re: 请教高人:怎样有选择的合并两个数据集
其实他想描述的就是一个MERGE BY的东西。。。。。。。。。。
作者: shiyiming    时间: 2009-3-31 18:40
标题: Re: 请教高人:怎样有选择的合并两个数据集
ahuige高见~~~ <!-- s:D --><img src="{SMILIES_PATH}/icon_biggrin.gif" alt=":D" title="Very Happy" /><!-- s:D -->
作者: shiyiming    时间: 2009-4-7 15:12
标题: Re: 请教高人:怎样有选择的合并两个数据集
你是否要将数据集A中的观测标记为两类,
一类是能够在数据集B中找到对应a=c, b=d 值的
如果找不到归为另一类?

proc sql;
create table X
as select a.*, B.d, B.e
from A as a left join B as b
on A.a=B.d and A.b=B.e;
quit;

A,B,X 是数据集
a,b,c,d,e 是变量名。




欢迎光临 SAS中文论坛 (https://mysas.net/forum/) Powered by Discuz! X3.2