【问题标题】:How to merge two data frames with same column names but columns in different order如何合并具有相同列名但列顺序不同的两个数据框
【发布时间】:2021-03-20 22:34:56
【问题描述】:

我有两个数据集,其中的列名称相同但顺序不同。我怎样才能将这些合并到一个新的数据集中,其中命名相同的列将被合并。

我试过了:

data1 <- read.csv2("Data2 kopio 2.csv", stringsAsFactors = FALSE)
data2 <- read.csv2("Data3.csv", stringsAsFactors = FALSE)

common_column_names <- intersect(names(data1), names(data2))


data3 <- merge(data1, data2, by=common_column_names, all.data1=TRUE)

但结果是一个空数据框,包含 0 个观测值和 375 个变量。

非常感谢您的帮助

【问题讨论】:

  • 我希望这种方法能够奏效。你能用dput()分享data1data2吗?

标签: r merge dataset


【解决方案1】:

我认为只需将 all.data1=TRUE 替换为 all.x=TRUE 即可。
顺便说一句,请注意,当您使用all.x=TRUE 时,data2 中不存在于data1 中的行将不会保留在data3 中。如果您想保留 data1data2 中的所有行,all=TRUE 将完成这项工作。
我希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 2020-10-31
    • 2016-08-12
    • 1970-01-01
    • 1970-01-01
    • 2021-01-16
    • 2014-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多