我有两个数据集。第一个是:
countyGroup income other_data_
1 20990 …
2 25622 …
3 24289 …
4 27391 …
5 23326 …
6 19261 …
7 15197 …
8 11132 …
第二个是:
countyGroup state county other_data
1 IL 123 …
1 IL 123 …
2 MI 365 …
1 IL 123 …
3 AK 65 …
4 IL 546 …
5 MI 689 …
6 AK 32 …
变量countyGroup
唯一标识state
和county
。第二个数据集包含countyGroup
,state
和county
。第一个数据集仅包含countyGroup
。我需要在第一个数据集中生成两个变量(state
和county
)。
我尝试使用merge
匹配值:
use dataset1
merge 1:m countyGroup using dataset2, keepusing(state state cntyfp) update replace
我得到的结果是重复的行...我试过1:1
它不起作用...我总是drop
那些重复的行,但我想从它们正确地合并它们开始。
答案 0 :(得分:3)
我们需要知道重复的行(Stata的术语是“观察”)。如果它们在所有变量上都相同,则没有额外的信息,并且使用duplicates drop
在merge
之前将它们排除在外是最简洁和最简单的。
duplicates
是管理重复项的常用工具。
如果其他变量有不同的信息,请告诉我们更多关于这是什么以及您的目标。
(稍后)使用您发布的数据集
merge 1:m countyGroup using dataset2
似乎工作正常。