全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2868 24
2016-11-11
有数据集A B分别格式如下
A数据集
date  a b  var1 var2
(例如有50个数据)

B数据集

date a b var19  var25
(例如有25个数据)

如果用平常方法合并,结果就是

date          a          b       var1 var2            var19 var25
前50个数据                   前50个数据          这里是......
后25个数据                    这里是......          后25个数据


但我想把不同的变量都合并到一起,结果就是

date   a   b       变量1   变量2
一共75个数据       一共75个数据

也就是说,虽然需要合并的变量名字不相等,但是变量个数都是一样的(假设是10个)
请问下怎么合并?我想到两种方法都不行啊,一种是把需要合并的变量改名,但是变量名都是不规则的
另外一种是合并后把所有数据都往左边靠。。。。。。


请问高手怎么办啊。。。。。。。。。


二维码

扫码加我 拉你入群

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

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

全部回复
2016-11-11 19:55:23
你首先要弄清楚你是要SET还是MERGE,看BY什么变量进行合并。建议去看看SAS base的相关知识
二维码

扫码加我 拉你入群

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

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

2016-11-14 08:13:33
wang1839 发表于 2016-11-11 19:55
你首先要弄清楚你是要SET还是MERGE,看BY什么变量进行合并。建议去看看SAS base的相关知识
主要是变量名字不一样,合并之后无论如何都有点出现,不知道能不能统一把名字改掉...........
二维码

扫码加我 拉你入群

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

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

2016-11-14 10:16:08
可以用macro解决你的问题
二维码

扫码加我 拉你入群

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

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

2016-11-14 10:39:29
首先弄清楚两个数据集的变量对应关系,听你意思是要批量重命名SET,那么你把对应的变量名改为一致就可以SET了 如
data c;
set a b(rename=(var19=v1 var25=v2));
by a b;
run;
二维码

扫码加我 拉你入群

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

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

2016-11-14 13:51:44
wang1839 发表于 2016-11-14 10:39
首先弄清楚两个数据集的变量对应关系,听你意思是要批量重命名SET,那么你把对应的变量名改为一致就可以SET ...
嗯,这个方法可行,但是我每次都要打开数据集看看是哪些变量然后再改名,由于我生成出来的变量是随机的,请问下有没有办法就是可以把从第N个变量到N+10个变量开始改名这样的呢- -?
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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