-2
我有以下两个数据集并需要第三个数据集作为输出。SAS左合并SAS合并或数据步骤中的逻辑
ONE TWO
---------- ----------
ID FLAG NUMB
1 N 2
2 Y 3
3 Y 9
4 N 2
5 N 3
9 Y 9
10 Y
OUTPUT
-------
ID FLAG NEW
1 N N
2 Y Y
3 Y Y
4 N N
5 N N
9 Y Y
10 Y N
如果ONE.ID在TWO.NUMB发现,它的ONE.FLAG = Y那么新的变量NEW = Y 否则NEW = N
我能做到这一点使用PROC SQL作为下面。
proc sql;
create table output as
(
select distinct id, flag, case when numb is null then 'N' else 'Y' end as NEW
from one
left join
two
on id = numb
and flag = 'Y'
);
quit;
这可以在DATA步骤/ MERGE中完成吗?
请作出努力,首先要解决的问题,后你试过了什么。 – Joe
对不起,我给你你一个自由的问题。现在展示一些工作。 –
@HongOoi在使用PROC SQL之前,我曾尝试过使用PROC SQL,但在这里发布问题并且工作正常,但无法使用数据tep/merge,因为我刚开始学习SAS。现在我用PROC SQL语句更新了这个问题 – athresh