我有多年的横断面数据。其中有一个唯一的标识符,表示每个横截面中常见的特定人。然而,每年都会增加新人(有些人会死,因此不会在以后的几年内)
我想知道如何在Stata中合并这些数据集以创建一种面板。
示例:
ID X_2005 Y_2005
1 700 850
2 400 311
3 475 250
ID X_2006 Y_2006
2 425 325
3 500 250
4 465 200
我想要这个:
ID X_2005 Y_2005 X_2006 Y_2006
1 700 850
2 400 311 425 325
3 475 250 500 250
4 465 200
我已经尝试过查看Stata的merge
命令,但我不了解1:m,m:m等。它似乎也有标识符的数量在每个数据集中都是相同的,所以我很困惑。
答案 0 :(得分:1)
正如@Nick Cox已经指出的那样,您的示例是1:1 merge
的简单情况,使用变量ID
来匹配两个横截面中的观察结果:
clear
input ID X_2005 Y_2005
1 700 850
2 400 311
3 475 250
end
save year2005, replace
clear
input ID X_2006 Y_2006
2 425 325
3 500 250
4 465 200
end
save year2006, replace
use year2005
merge 1:1 ID using year2006
Result # of obs.
-----------------------------------------
not matched 2
from master 1 (_merge==1)
from using 1 (_merge==2)
matched 2 (_merge==3)
-----------------------------------------
list ID X_2005 Y_2005 X_2006 Y_2006
+----------------------------------------+
| ID X_2005 Y_2005 X_2006 Y_2006 |
|----------------------------------------|
1. | 1 700 850 . . |
2. | 2 400 311 425 325 |
3. | 3 475 250 500 250 |
4. | 4 . . 465 200 |
+----------------------------------------+