SAS 问题:如图,小sample A 和大sample B, 里面有着不完全相同的值。如何使得两个数据保留相同内容的值。
答案:4 悬赏:40
解决时间 2021-03-28 23:25
- 提问者网友:不要迷恋哥
- 2021-03-28 16:11
SAS 问题:如图,小sample A 和大sample B, 里面有着不完全相同的值。如何使得两个数据保留相同内容的值。
最佳答案
- 二级知识专家网友:长青诗
- 2021-03-28 16:23
merge语句可以啊,程序如下:
data sampleA;
input sa $;
cards;
A09
A10
A15
A18
;
run;
data sampleB;
input sa $;
cards;
A07
A10
A12
A16
A18
;
run;
data a;
merge sampleA(in=a) sampleB(in=b);
by sa;
if a=b;
run;
data sampleA;
input sa $;
cards;
A09
A10
A15
A18
;
run;
data sampleB;
input sa $;
cards;
A07
A10
A12
A16
A18
;
run;
data a;
merge sampleA(in=a) sampleB(in=b);
by sa;
if a=b;
run;
全部回答
- 1楼网友:梦中风几里
- 2021-03-28 19:38
data sampleA;
input sa $;
cards;
A09
A10
A15
A18
;
run;
data sampleB;
input sb $;
cards;
A07
A10
A12
A16
A18
;
run;
proc sql;
select a.sa ,b.sb
from sampleA as a ,sampleB as b
where a.sa=b.sb;
quit;
input sa $;
cards;
A09
A10
A15
A18
;
run;
data sampleB;
input sb $;
cards;
A07
A10
A12
A16
A18
;
run;
proc sql;
select a.sa ,b.sb
from sampleA as a ,sampleB as b
where a.sa=b.sb;
quit;
- 2楼网友:酒者煙囻
- 2021-03-28 18:04
下面这段code应该能解决你的问题,两个数据集你可能还要自己创建下
data sampleA;
input sa $;
cards;
A09
A10
A15
A18
;
run;
data sampleB;
input sb $;
cards;
A07
A10
A12
A16
A18
;
run;
proc sql;
create table final as
select a.sa, b.sb
from sampleA as a
inner join sampleB as b
on a.sa=b.sb;
quit;
data sampleA;
input sa $;
cards;
A09
A10
A15
A18
;
run;
data sampleB;
input sb $;
cards;
A07
A10
A12
A16
A18
;
run;
proc sql;
create table final as
select a.sa, b.sb
from sampleA as a
inner join sampleB as b
on a.sa=b.sb;
quit;
- 3楼网友:不如潦草
- 2021-03-28 17:18
提个思路吧 不在电脑边
data Newa newb;
Set samplea(in a) sampleb(in b);
If a=b output Newa newb;
Run;
data Newa newb;
Set samplea(in a) sampleb(in b);
If a=b output Newa newb;
Run;
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯