我要问的可能很简单,但我仍然没有找到一种快速简单的方法。
我的数据框有从A1到H12的96列。 我将每周开始接收我想在一个数据框中编译的文件。问题是这些文件遗漏了一些列(可能是第一列或中间的任何其他列),因此合并有点令人讨厌。
以下是我的例子:
t = data.frame(A1 = c(1,2,3,4,5), B1 = c(7,8,9,10,11), C1 = c(10,2,3,7,8), D1 = c(3,6,7,1,2))
> t
A1 B1 C1 D1
1 1 7 10 3
2 2 8 2 6
3 3 9 3 7
4 4 10 7 1
5 5 11 8 2
我想要做的是当我收到一个新的数据框,根据列名添加它,并用NA填充其余部分:
new df:
t2 = data.frame(B1 = c(2,4), C1 = c(5,7))
> t2
B1 C1
1 2 5
2 4 7
merge:
A1 B1 C1 D1
1 1 7 10 3
2 2 8 2 6
3 3 9 3 7
4 4 10 7 1
5 5 11 8 2
6 NA 2 5 NA
7 NA 4 7 NA
有一种简单的方法吗?
提前谢谢大家, 干杯
答案 0 :(得分:5)
您可以使用dplyr
' s bind_rows
:
library(dplyr)
bind_rows(t, t2)