r - 将数据框中的一行添加到另一个数据框中的所有行

标签 r dataframe

我有 2 个数据框:

A <- data.frame(x = c(1,4), y = c(3,5))
B <- data.frame(x = c(3,6), y = c(7,9))

一个

x   y
1   3
4   5

B

x    y
2    4
3    6

我想将 A 中的所有行添加到 B 的第一行。我想要的输出数据框是:

x    y
3    7
6    9

我尝试了 B[1, ] + A 但没有成功:

#Error in Ops.data.frame(A, B[1, ]) : 
#  ‘+’ only defined for equally-sized data frames

非常感谢任何帮助!

最佳答案

无需将所有内容都转换为矩阵并使用矩阵,我们可以使用:

mapply("+", A, B[1, ])

另一种方式(更类似于使用矩阵)是:

A + B[rep.int(1, nrow(A)),]

关于r - 将数据框中的一行添加到另一个数据框中的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41642081/

相关文章:

r - 添加一列以指示每行中选定列的重复率

python - 在 Python 中,是否有直接的方法来过滤 pd.dataframe 以列的 2 个值范围为条件?

替换每列的最大值

r - 如何导出S3方法以使其在 namespace 中可用?

python - 如果 df 记录是英文的,则使用 python 将其移动到另一列

r - 测试一个数据框是否是另一个数据框的排序版本

r - 如何根据 R 中的类别计算列中值的数量?

[R] 中两列的字符串匹配

arrays - 命名数组的一维

R: annotate() 在 R 中给出错误