You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R语言中对DataFrame部分行求和以生成新行或合并行

R语言实现DataFrame指定行保留与求和行生成

初始数据

columna_a <- c('a','b','c')
columna_b <- c(300,400,250)
columna_c <- c(1,2,3)

df1 <- data.frame(columna_a, columna_b, columna_c)

操作一:仅保留指定行及两行求和结果

直接提取目标行,计算指定两行的求和值,再合并成新的DataFrame:

# 提取需要保留的a行
row_a <- df1[df1$columna_a == 'a', ]

# 计算b、c行的求和结果,构造新行
sum_bc <- data.frame(
  columna_a = 'b+c',
  columna_b = sum(df1$columna_b[df1$columna_a %in% c('b','c')]),
  columna_c = sum(df1$columna_c[df1$columna_a %in% c('b','c')])
)

# 合并得到目标DataFrame
df2 <- rbind(row_a, sum_bc)

操作二:先新增求和行,再按需保留

先把求和行添加到原DataFrame中,再筛选出需要的行:

# 构造b、c行的求和行
sum_bc <- data.frame(
  columna_a = 'b+c',
  columna_b = sum(df1$columna_b[df1$columna_a %in% c('b','c')]),
  columna_c = sum(df1$columna_c[df1$columna_a %in% c('b','c')])
)

# 将求和行新增到原DataFrame
df_with_sum <- rbind(df1, sum_bc)

# 筛选保留a行和求和行
df2 <- df_with_sum[df_with_sum$columna_a %in% c('a', 'b+c'), ]

说明

如果需要更换指定保留的行或求和的行,只需修改代码中columna_a的匹配值即可(比如把'a'换成其他标识,把c('b','c')换成其他需要求和的行标识)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 17:22:51