SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 690|回复: 6
打印 上一主题 下一主题

请教高人:怎样有选择的合并两个数据集

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2009-3-28 15:44:48 | 只看该作者

请教高人:怎样有选择的合并两个数据集

比如:
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值
谢谢
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2009-3-28 15:47:24 | 只看该作者

Re: 请教高人:怎样有选择的合并两个数据集

[code:391687lp]
data out;
       set a;
       set b;
       if a=d then f=f;
       else f=.;
run;
[/code:391687lp]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2009-3-28 16:15:08 | 只看该作者

Re: 请教高人:怎样有选择的合并两个数据集

谢谢,不过好像不太对,可能是我没表达清楚,改了一下主题
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2009-3-29 07:46:45 | 只看该作者

Re: 请教高人:怎样有选择的合并两个数据集

你这一改,我就完全看不懂了~~~
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2009-3-30 11:35:48 | 只看该作者

Re: 请教高人:怎样有选择的合并两个数据集

其实他想描述的就是一个MERGE BY的东西。。。。。。。。。。
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
6#
 楼主| 发表于 2009-3-31 18:40:35 | 只看该作者

Re: 请教高人:怎样有选择的合并两个数据集

ahuige高见~~~ <!-- s:D --><img src="{SMILIES_PATH}/icon_biggrin.gif" alt=":D" title="Very Happy" /><!-- s:D -->
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
7#
 楼主| 发表于 2009-4-7 15:12:13 | 只看该作者

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 是变量名。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-5 14:02 , Processed in 0.069367 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表