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

R语言如何基于dataframe两列的值分组计算并新增均值列

实现方法

dplyr方案

dplyr原生支持多维度分组统计,你只需要在group_by()中同时传入两个分组列即可:

library(dplyr)

# 按group、type两个维度同时分组,计算x的均值
res <- dat %>%
  group_by(group, type) %>%
  summarise(mean = mean(x), .groups = "drop")

print(res)

运行上述代码后输出的结果格式和你期望的完全一致,.groups = "drop"参数是为了计算完成后自动解除分组,避免后续操作产生非预期的结果。

基础R方案(无需加载第三方包)

如果不想用dplyr,也可以用基础R的aggregate()函数实现:

res_base <- aggregate(x ~ group + type, data = dat, FUN = mean)

内容的提问来源于stack exchange,提问作者Ana Catarina Vitorino

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 17:48:03