全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1287 3
2014-07-30
向大家求助:
经常用merge 语句,可是这次不知道为什么不行。。。
我有两个data set,其中一个 a:
sampleid  vhhid   villageid
1             1           60
第二个b:
sampleid   vhhid  villageid
2               1        为空值
3               1       为空值
我想通过第一个数据集a 去和b merge 然后将第二个的数据集空值覆盖为60,
但是最后的效果总是sampleid为2 的进行了覆盖 为3 的没有覆盖成功。。。为什么。。。。。
二维码

扫码加我 拉你入群

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

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

全部回复
2014-7-30 13:55:59
因为数据集b里面也有villageid变量,新读进来的值会覆盖之前的值。

二维码

扫码加我 拉你入群

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

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

2014-7-30 16:02:22
pobel 发表于 2014-7-30 13:55
因为数据集b里面也有villageid变量,新读进来的值会覆盖之前的值。
那为什么只有b里的第一个会覆盖,第二个不会。我想把两个都覆盖为60 有什么好办法么
二维码

扫码加我 拉你入群

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

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

2014-7-30 16:33:02
阿呆sas 发表于 2014-7-30 16:02
那为什么只有b里的第一个会覆盖,第二个不会。我想把两个都覆盖为60 有什么好办法么
如果用merge b a;那两个就都为空值了。
如果用merge的话,应该需要用rename=来改一下变量的名字
二维码

扫码加我 拉你入群

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

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

栏目导航
热门文章
推荐文章

说点什么

分享

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