You need to enable JavaScript to run this app. R语言dplyr使用列范围或匹配规则创建行计算列的方法
优惠活动
大模型
产品
解决方案
定价
更多

R语言dplyr使用列范围或匹配规则创建行计算列的方法

解决方案

你可以使用dplyr的rowSums()搭配across()函数实现批量选列按行求和,两种常用写法如下:

写法1:按列范围选择

library(dplyr)

result <- gl %>%
  mutate(
    C1 = rowSums(across(X4010:X4030)),
    C2 = rowSums(across(X5010:X5040))
  )

写法2:按列名前缀匹配(更适合列数多的场景)

library(dplyr)

result <- gl %>%
  mutate(
    # 选中所有列名以X40开头的列求和
    C1 = rowSums(across(starts_with("X40"))),
    # 选中所有列名以X50开头的列求和
    C2 = rowSums(across(starts_with("X50")))
  )

如果你的数据中存在缺失值,可在rowSums()中添加na.rm = TRUE参数,避免求和结果返回NA:

C1 = rowSums(across(starts_with("X40")), na.rm = TRUE)

以上两种写法输出的结果和你给出的预期结果完全一致。

内容的提问来源于stack exchange,提问作者Ajit Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 14:45:04