R:添加两个具有相同维度的数据框

标签 r

我有 df1:

Type     CA     AR     Total
alpha    2      3        5
beta     1      5        6
gamma    6      2        8
delta    8      1        9

我有 df2:
Type     CA     AR     Total
alpha    3      4        7
beta     2      6        8
gamma    9      1        10
delta    4      1        5

我想在两个数据框中添加值以获得具有以下结果的 1 个数据框:
    Type     CA     AR     Total
    alpha    5      7        12
    beta     3      11       14
    gamma    15     3        18
    delta    12     2        14

示例 --> (alpha, CA) = 2 (from df1) + 3 (from df2) = 5 (resulting df)

有谁知道如何做到这一点?我认为这并不完全是合并,因为合并将覆盖该值,因为我想添加该值。

提前致谢!!

最佳答案

+被向量化,这只是 R 中的一个简单操作

cbind(df1[1], df1[-1] + df2[-1])
#    Type CA AR Total
# 1 alpha  5  7    12
# 2  beta  3 11    14
# 3 gamma 15  3    18
# 4 delta 12  2    14

如果您的数据集排序不正确,您可以使用 match (如评论中所述)
cbind(df1[1], df1[, -1] + df2[match(df1$Type, df2$Type), -1])

关于R:添加两个具有相同维度的数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30516094/

相关文章:

r - 如何用nix创建一个可以启动Rstudio的环境

R:boot()输出的解释

r - 按组累计

r - LDA 分析时下标越界

r - 删除列名中的字符

r - 从数据框列表中提取最后一列

r - 如何通过计算现有列来创建新列

r - 贝叶斯网络与 R

r - 在r中的数据框中连续按年求和

r - 将平均值添加到构面