楼主: 余鱼
12467 14

纠结的数据处理 [推广有奖]

11
sungmoo 发表于 2011-5-6 17:16:24
余鱼 发表于 2011-5-6 15:51 其实就是想把数据1和数据2用NEW 这个变量把他们合在一起
*你还是没有清楚说明你合并的原则。

*不知道以下是不是你要的结果:

use incom-ind.dta, clear
ren line line2009
joinby hhid wave line2009 using insurance_ind

12
余鱼 发表于 2011-5-6 18:00:00
对不起  我的语言表达能力有问题  首先就是想把两个表合并在一起

以hhid wave line 这三个变量进行界定
确定一个人对应的一个变量

我先用egen 分别在两个表中生成一个变量new
再根据new进行合并
  但是在合并的时候总是会出现说new在两个表中都不是唯一的
即会出现这样的语句


variable new does not uniquely identify observations in the master data
variable new does not uniquely identify observations in 14.dta
我想问 这样的问题是怎么去解决

谢谢你的热情帮助

13
sungmoo 发表于 2011-5-6 18:40:50
余鱼 发表于 2011-5-6 18:00 我想问 这样的问题是怎么去解决
这先要看你自己规定的合并原则(从而对应的解决方案)。

你可以试想一下,不用任何软件时,遇到目前这种情况,你要做的取舍是什么,你想怎么合并。

14
tracy白 发表于 2019-3-27 20:40:37
最近也是在用merge合并数据,该帖子真的帮了我好多啊。现在把我自己的合并命令写出来,供大家参考,如果有不妥的地方还望大家指教,互相学习。
import excel "/Users/xxx/Documents/stata/growth2008.xls", sheet("Sheet1") firstrow
duplicates report
duplicates drop
save /Users/xxx/Documents/stata/growth2008.dta
clear
import excel "/Users/xxx/Documents/stata/2008.xlsx", sheet("??") firstrow
encode code,gen(code1)
drop code
rename code1 code
duplicates report
duplicates drop
merge 1:1 code using "/Users/xxx/Documents/stata/growth2008.dta",gen(merge_growth)
clear
注:在stata 14.0MP for Mac下进行.

15
2374242761 发表于 2020-3-28 00:10:15
报错的原因是因为用来匹配的变量(也就是你说的变量new),在想要合并的两份数据文件中的某一份中,该变量不唯一。
简单举个例子,如果两份文件中用来匹配的变量是日期date,那么至少在某一份文件中,某一日期出现了不止一次,所以会提示你不唯一。
已有 1 人评分论坛币 学术水平 热心指数 收起 理由
admin_kefu + 20 + 2 + 2 精彩帖子

总评分: 论坛币 + 20  学术水平 + 2  热心指数 + 2   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-16 09:32