R - 从2个横截面数据集创建Panel数据集

时间:2017-05-17 05:11:45

标签: r data-manipulation panel-data

您能否帮我完成从两个横截面数据集创建面板数据集的以下任务?

具体而言,横截面数据集的一小部分是:

1) - data1

  ID| Yr    | D | X
 -------------------
 1  | 2002  | F | 25    
 2  | 2002  | T | 27    

&安培; 2) - data2

ID  | Yr   | D  | X 
---------------------
1   | 2003 | T  | 45    
2   | 2003 | F  | 35    

并且想要创建一个表单小组:

ID  | Yr   |    D   | X 
----------------------- 
1   | 2002 |    F   | 25    
1   | 2003 |    T   | 45    
2   | 2002 |    T   | 27    
2   | 2003 |    F   | 35    

到目前为止我尝试过的代码是:

IDvec<-data1[,1]

ID_panel=c()
for (i in 1:length(IDvec)) {
   x<-rep(IDvec[i],2)
   ID_panel<-append(ID_panel,x)
}

Years_panel<-rep(2002:2003,length(IDvec))

但无法弄清楚如何链接第3和第4列。任何帮助将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:0)

假设您要连接数据框,请按IDYr排序。这是dplyr方法:

library(dplyr)
data1 %>%
  bind_rows(data2) %>%
  arrange(ID, Yr)

  ID   Yr D  X
1  1 2002 F 25
2  1 2003 T 45
3  2 2002 T 27
4  2 2003 F 35