我正在寻找一个dplyr解决方案来合并dplyr中的两个df(或tibble),当它们具有相同的长度但不同的列名时。
我到目前为止找到的解决方案relate to a common column名称,通过by = ""
字段加入。
结构:
DF1
A B
1 4
2 2
DF2
C D
4 1
3 4
期望的输出:
DF
A B C D
1 4 4 1
2 2 3 4
答案 0 :(得分:1)
你可以试试这个:
library(data.table)
setDT(df1,keep.rownames=T); setDT(df2,keep.rownames=T)
df3 <- df1[df2,on="rn"]
df3 <- subset(df3, select = -c(rn))
从here获取的方法。
修改强>
您可以使用dplyr
df1$rn <- seq.int(nrow(df1))
df2$rn <- seq.int(nrow(df2))
df3 <- full_join(df1, df2, by = rn)