将数据帧与不相等的列数组合在一起

时间:2014-02-02 14:08:39

标签: r

假设我有两个数据帧,Dat1和Dat2,

Dat1
Col1 Col2 Col3
A1    56   89

Dat2
Col1 Col2 Col4 Col5
A2   49    84   F11

最后,我想要一个看起来像

的组合数据框
Col1 Col2 Col3 Col4 Col5
A1    56   89   NA    NA
A2    49   NA   84    F11

是否有可能在R?

中实现这一目标

2 个答案:

答案 0 :(得分:6)

rbind.fillplyr还有Stack

library(plyr)

rbind.fill(Dat1, Dat2)

##   Col1 Col2 Col3 Col4 Col5
## 1   A1   56   89   NA <NA>
## 2   A2   49   NA   84  F11

library(Stack)

Stack(Dat1, Dat2)

##   Col1 Col2 Col3 Col4 Col5
## 1   A1   56   89   NA <NA>
## 2   A2   49   NA   84  F11

答案 1 :(得分:4)

您要与all=TRUE合并:

merge(Dat1,Dat2,all=TRUE)
  Col1 Col2 Col3 Col4 Col5
1   A1   56   89   NA <NA>
2   A2   49   NA   84  F11

Col5显示<NA>而不是NA,因为它的模式为factor