r - 如何添加具有相同名称的列

标签 r multiple-columns

我有很大的数据集,即两个数据框。并想要添加在另一个数据框中具有相同列名的值。我该如何设置代码?

df1
a b c
0 0 0
0 0 0

df2
a c d
1 1 0
0 1 0

我期望的是:

a b c
1 0 1
0 0 1

这意味着我负责保留 colnames df1,但值在 df2 中。谢谢您的帮助。祝你有美好的一天

最佳答案

  1. data.frame配合使用
    data.frame(lapply(X = split.default(x = cbind(df1, df2),
                                        f = c(names(df1), names(df2))),
                      FUN =  rowSums))[names(df1)]
    #  a b c
    #1 1 0 1
    #2 0 0 1
  • 适用于data.framematrix
  •     nm = intersect(colnames(df1), colnames(df2))
        nm1 = colnames(df1)[!colnames(df1) %in% nm]
    
        m = cbind(df1[, nm1, drop = FALSE], df1[, nm, drop = FALSE] + df2[, nm, drop = FALSE])
        colnames(m) = c(nm1, nm)
        m[,colnames(df1)]
        #  a b c
        #1 1 0 1
        #2 0 0 1
    

    #DATA
    df1 = structure(list(a = c(0L, 0L), b = c(0L, 0L), c = c(0L, 0L)),
                    class = "data.frame",
                    row.names = c(NA, -2L))
    
    df2 = structure(list(a = 1:0, c = c(1L, 1L), d = c(0L, 0L)),
                    class = "data.frame",
                    row.names = c(NA, -2L))
    

    关于r - 如何添加具有相同名称的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55349343/

    相关文章:

    使用向量替换行子集的列值

    HTML/CSS 列滚动

    html - 使包含多列元素的 div 容器扩展到列的宽度

    sql - 如何编写分位数聚合函数?

    r - idw为我崩溃了R

    r - 在databricks上安装 'tigerstats'包

    string - Perl:从文件读取后如何检查数组列中单词的最大宽度?

    r - knitr 缠结的 R 代码中缺少 block 名称

    python - 如何在Python中将文本文件分割成适当数量的列?

    mysql - 使用 MySQL 从一列到多列的数据计数?