根据列名称向数据框添加行,并将NA添加到空列

时间:2016-06-02 07:37:58

标签: r dataframe

我要问的可能很简单,但我仍然没有找到一种快速简单的方法。

我的数据框有从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

有一种简单的方法吗?

提前谢谢大家, 干杯

1 个答案:

答案 0 :(得分:5)

您可以使用dplyr' s bind_rows

library(dplyr)
bind_rows(t, t2)