全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3565 10
2012-09-07
有两个Dataset:
DatasetONE:
  

AREA

  

SALPROF


  

N

  

230


  

N

  

210


  

Ne

  

340


  

S

  

170


  
  






DatasetTWO:

AREA


  

SALE

  

N


  

220

  

E


  

110

  

Ne


  

210

  

Ma


  

180

  

S


  

120

  

要怎么使用MERGE和SET命令才能让输出结果变成这货:

                                 Obs    AREA   SALEPROF    SALE


                                  1        E                     .      110

                                  2        MA                  .       180

                                  3        N               230       220

                                  4        N               210       220

                                  5        NE             340       210

                                  6        S               170       120


求大神指点!

为了方便大神们操作,我把Dataset的代码贴上来:

data DatasetONE;
input area $ saleprof;
cards;
N  230
N  210
NE 340
S  170
;
DATA DatasetTWO;
input area $ sale;
cards;
n  220
e  110
ne 210
ma 180
s  120
;


在线等~~~~

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-9-7 08:44:51
导入数据后,用upcase函数把datasettwo中area大写,然后进行merge
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-9-7 08:53:43
空山空语 发表于 2012-9-7 08:44
导入数据后,用upcase函数把datasettwo中area大写,然后进行merge
大小写也有关系的么? dataset输入SAS的命令是我自己打的 要改大写的话直接改就是了 能请教下怎么变成那个目标表格么
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-9-7 09:05:11
如果刚开始就是大写的话,先用proc sort 对两个dataset按照area排序;最后merge,比如
data dataset;
merge datasetone datasettwo;
by area;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-9-7 09:06:59
proc sort data=datasetone;
  by area;
run;

proc sort data=datasettwo;
  by area;
run;

data datasetthree;
  merge datasetone datasettwo;
  by area;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-9-7 09:10:51
这种MERGE会不会产生产生三个N啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群