gpt4 book ai didi

r - 根据公共(public)列组合 R 中的两个数据框

转载 作者:行者123 更新时间:2023-12-02 15:36:26 25 4
gpt4 key购买 nike

我必须合并两个看起来像这样的数据框我想采用数据框之间的公共(public)列并将它们连接在一起。两个数据框中的行将完全不同。

      a  b c 
row1 1 0 1
row2 1 0 1

另一个数据框

     d a c f
row3 1 0 1 1
row4 1 1 0 0

我希望最终的数据集看起来像这样

        a c 
row1 1 1
row2 1 1
row3 0 1
row4 1 0

这是来自两个数据帧的输出

dput(x1)
structure(list(d = c(1L, 1L), a = 0:1, c = c(1L, 0L), f = c(1L,
0L)), .Names = c("d", "a", "c", "f"), row.names = c("row3", "row4"
), class = "data.frame")

dput(x2)
structure(list(a = c(1L, 1L), b = c(0L, 0L), c = c(1L, 1L)), .Names = c("a",
"b", "c"), row.names = c("row1", "row2"), class = "data.frame")

最佳答案

您可以获得通用名称,然后使用行绑定(bind):

common <- intersect(names(x1), names(x2))
rbind(x1[,common], x2[,common])
a c
row3 0 1
row4 1 0
row1 1 1
row2 1 1

编辑:匹配您的预期输出

 rbind(x2[,common], x1[,common])
a c
row1 1 1
row2 1 1
row3 0 1
row4 1 0

关于r - 根据公共(public)列组合 R 中的两个数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16674377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com