我想合并两个与列无关的表。
这是示例:
表A:
表B:
想法是合并表,为两个表中的每一行创建一行,并为我们没有信息的列分配“ NA”。 这将是结果示例:
我尝试过使用 merge(),但在这种情况下,我只会得到一行(带有值)而不是两行。
想法是合并具有很多列和很多行的两个表,我该怎么做?
答案 0 :(得分:2)
df.1[, colnames(df.2)] <- NA
df.2[, colnames(df.1)[1:2]] <- NA
rbind(df.1, df.2)
Gender Age Id Group 1 0 27 NA NA 2 NA NA 1 0
df.1 <- data.frame(Gender = 0, Age = 27)
df.2 <- data.frame(Id = 1, Group = 0)
答案 1 :(得分:1)
使用bind_rows
library(dplyr)
bind_rows(A, B)
# Gender Age id Group
#1 0 27 NA NA
#2 NA NA 1 0
A <- data.frame(Gender = 0, Age =27)
B <- data.frame(id = 1, Group = 0)
答案 2 :(得分:1)
rbind.fill()
中的 plyr
应该也可以正常工作。它按行合并数据帧,并用NA
填充缺少的列。试试:
library(plyr)
rbind.fill(df1, df2)
Gender Age ID Group
1 0 27 NA NA
2 NA NA 1 0
如果您有矩阵,请使用rbind.fill.matrix()