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

R语言:按text_type分组计算多列变量均值的方法求助

按text_type分组计算多列均值的解决方案

嘿,作为R语言新手碰到这种批量分组计算的问题太正常啦,我给你两个简单好用的方法,你可以根据自己的习惯选:

方法1:用dplyr包(推荐,代码更直观)

dplyr是处理数据框的神器,语法很容易理解,步骤如下:

  1. 先安装并加载dplyr包(如果还没装的话):
# 安装包(只需要运行一次)
install.packages("dplyr")
# 加载包
library(dplyr)
  1. 分组计算均值:
# 按text_type分组,计算所有其他列的均值,同时忽略缺失值
result_dplyr <- BNCbiber %>%
  group_by(text_type) %>%
  summarise_all(mean, na.rm = TRUE)
  • group_by(text_type):指定按text_type列分组
  • summarise_all(mean, na.rm = TRUE):对分组后的所有其他列应用mean函数,na.rm = TRUE是为了跳过缺失值(如果你的数据里有NA,一定要加这个,不然结果会变成NA)

方法2:用Base R的aggregate函数(无需额外装包)

如果你不想装新包,用R自带的aggregate函数也能搞定:

# 按text_type分组,计算所有其他列的均值
result_base <- aggregate(. ~ text_type, data = BNCbiber, FUN = mean, na.rm = TRUE)
  • . ~ text_type:这里的.代表除text_type之外的所有列,意思是把这些列按text_type分组计算均值
  • FUN = mean:指定计算均值的函数
  • na.rm = TRUE:同样是处理缺失值的参数

小提示

如果你的数据里有缺失值,一定要记得加上na.rm = TRUE哦,不然只要某组里有一个NA,那整列的均值就会变成NA,影响结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 03:34:14