【问题标题】:Combine multiple dataframes of unequal length into a new dataframe [duplicate]将多个长度不等的数据帧组合成一个新的数据帧[重复]
【发布时间】: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(),但这给了我一个错误。

【问题讨论】:

    标签: r cbind


    【解决方案1】:

    试试

    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 是很有用的,你可以这样做。

    【讨论】:

    • 非常感谢。你有关于连接线程的建议吗?
    • @Rn00b 我已经编辑了我的答案给你一个链接。如果这回答了您的问题,请随时接受此答案。如果你觉得它特别有用,你也可以点赞。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    • 1970-01-01
    • 2020-02-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多