合并循环中的多个数据帧

时间:2016-02-25 21:02:03

标签: r loops

我有一个ID为

的数据框(df)
ID
1
2
3
4
5
6

我有这样的数据框df1和df2:

DF1:

ID  x
3   656
5   678

DF2:

ID x
1  45
2  954
6  1245

我想将df1和df2合并到df上。结果数据框将是:

ID  x
1   45
2   954
3   656
4   NA
5   678
6   1245

在我真正的问题中,我有很多数据框要与df合并(df还有很多ID)。我想循环中的这个合并过程。我怎么能在R?我将非常高兴能得到任何帮助。非常感谢。

1 个答案:

答案 0 :(得分:1)

您可以尝试这样的事情:

创建' x'第一个data.frame

中包含所有NA值的列
df[,"x"] <- NA

使用您的ID列命名您的第一个data.frame

的行
rownames (df) <- df$ID

然后使用此rownames替换&#39; x&#39;根据您的其他每个数据集

列中所需的行
df[df1$ID, "x"] <- df1$x

df[df2$ID, "x"] <- df2$x

这会将NA值保留在&#39; x&#39;如您的示例中的列。