我在R中有一个这样的数据集(我真正的数据集有更多的行和列):

AB1 AB3 AB4 XB1 XB3 XB4
12 34 0 5 3 7

我需要把这一栏加起来

AB1+XB1 AB3+XB3 AB4+XB4

我可以使用什么代码?

推荐答案

你可以用

library(dplyr)
df %>% 
  mutate(across(starts_with("AB"),
                ~.x + df[[gsub("AB", "XB", cur_column())]],
                .names = "sum_{.col}"))

这又回来了

# A tibble: 1 x 9
    AB1   AB3   AB4   XB1   XB3   XB4 sum_AB1 sum_AB3 sum_AB4
  <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>   <dbl>   <dbl>   <dbl>
1    12    34     0     5     3     7      17      37       7
  • 在这种方法中,我们使用acrossmutate.
  • 首先,我们 Select 所有以AB开头的列.期望的和总是ABn + XB2,所以我们可以使用这个模式.
  • 接下来,我们将当前选定列的名称中的AB替换为XB,并将这两列相加.这些总和存储在一个以sum_为前缀的新列中.

R相关问答推荐

ggplot 2中的地块底图(basemaps_gglayer()不起作用)

如何删除多个.CSV文件的行

计算R中的威布尔分布的EDF

更改绘图上的x轴断点,而不影响风险?

在垂直轴中包含多个ggplot2图中的平均值

如何直接从R中的风险分数计算c指数?

对于变量的每个值,仅 Select 包含列表中所有值的值.R

使用较长的查询提取具有部分匹配的列表中的较短目标,

以更少间隔的较小表中的聚合离散频率表

LOF中的插图短文字幕

从R中的对数正态分布生成随机数的正确方法

我们如何在R中透视数据并在之后添加计算

如何使用字符串从重复的模式中提取多个数字?

判断函数未加载R中的库

填充图例什么时候会有点?

R中的Desolve:返回的导数数错误

如何为包创建自定义roxygen2标签?

对计算变量所有唯一值的变量进行变异

如何使用ggsurvfit包更改风险表中的标签名称?

通过分析特定列中的字符串在数据框中创建新的行和列