【发布时间】:2018-07-27 19:20:56
【问题描述】:
我想将多个长度不等的数据帧组合成一个新的数据帧,其中空行的值为NA。
例如df1
A
1
2
3
4
5
df2
B
1
2
3
4
5
6
期望的输出
df3
A B
1 1
2 2
3 3
4 4
5 5
NA 6
我厌倦了cbind(),但这给了我一个错误。
【问题讨论】:
我想将多个长度不等的数据帧组合成一个新的数据帧,其中空行的值为NA。
例如df1
A
1
2
3
4
5
df2
B
1
2
3
4
5
6
期望的输出
df3
A B
1 1
2 2
3 3
4 4
5 5
NA 6
我厌倦了cbind(),但这给了我一个错误。
【问题讨论】:
试试
df1 <- data.frame(A = 1:5)
df1$id <- row.names(df1)
df2 <- data.frame(B = 1:6)
df2$id <- row.names(df2)
merge(df1, df2, all = T, by = "id")
id A B
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
5 5 5 5
6 6 NA 6
对于这样的情况,熟悉all the different kinds of joins 是很有用的,你可以这样做。
【讨论】: