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

如何在R DataFrame中按名称列分组求和对应数值

R数据框分组求和实现方法

原始数据结构

Names ColumnA Value
Some words1
Other words6
Different words3
Some words2
Other words2
Different words1

目标结果

Names ColumnA Value
Some words3
Other words8
Different words4

下面是三种常用的实现方式:

1. 基础R内置函数aggregate()

无需额外安装包,直接用原生函数处理:

# 假设你的数据框名为df
sum_result <- aggregate(`A Value` ~ `Names Column`, data = df, FUN = sum)
print(sum_result)

2. dplyr包(tidyverse生态)

语法更直观,适合日常数据处理:

# 未安装dplyr的话先执行:install.packages("dplyr")
library(dplyr)

sum_result <- df %>%
  group_by(`Names Column`) %>%
  summarise(`A Value` = sum(`A Value`)) %>%
  ungroup() # 可选,移除分组标记

print(sum_result)

3. data.table包(高效处理大数据)

针对大规模数据的高性能解决方案:

# 未安装data.table的话先执行:install.packages("data.table")
library(data.table)

# 转换为data.table格式
dt <- as.data.table(df)
sum_result <- dt[, .(`A Value` = sum(`A Value`)), by = `Names Column`]

print(sum_result)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 06:25:06