如何在 r 中聚合多列(附示例)
我们可以使用 R 中的Aggregate()函数来生成数据框中一个或多个变量的汇总统计数据。
该函数使用以下基本语法:
聚合(sum_var ~ group_var,数据 = df,FUN = 平均值)
金子:
- sum_var:要汇总的变量
- group_var:要分组的变量
- data:数据块的名称
- FUN:要计算的汇总统计数据
本教程提供了几个使用此函数在 R 中一次聚合一列或多列的示例,使用以下数据框作为示例:
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C'), conf=c('E', 'E', 'W', 'W', 'W', 'W', 'W', 'W'), points=c(1, 3, 3, 4, 5, 7, 7, 9), rebounds=c(7, 7, 8, 3, 2, 7, 14, 13)) #view data frame df team conf points rebounds 1 AE 1 7 2 AE 3 7 3 AW 3 8 4 BW 4 3 5 BW 5 2 6 BW 7 7 7 CW 7 14 8 CW 9 13
示例 1:汇总变量并按变量分组
以下代码显示了如何查找按团队分组的平均得分:
#find mean points scored, grouped by team aggregate(points ~ team, data = df, FUN = mean, na. rm = TRUE ) team points 1 A 2.333333 2 B 5.333333 3 C 8.000000
示例 2:汇总一个变量并按多个变量分组
以下代码显示了如何查找按团队和会议分组的平均得分:
#find mean points scored, grouped by team and conference aggregate(points ~ team + conf, data = df, FUN = mean, na. rm = TRUE ) team conf points 1 AE 2.000000 2 AW 3.000000 3 BW 5.333333 4 CW 8.000000
示例 3:汇总多个变量并按一个变量分组
以下代码显示如何查找按球队分组的平均得分和平均篮板数:
#find mean points scored, grouped by team and conference aggregate( cbind (points,rebounds) ~ team, data = df, FUN = mean, na. rm = TRUE ) team points rebounds 1 A 2.333333 7.333333 2 B 5.333333 4.000000 3 C 8.000000 13.500000
示例 4:汇总多个变量并按多个变量分组
以下代码显示如何查找按球队和会议分组的平均得分和平均篮板数:
#find mean points scored, grouped by team and conference aggregate( cbind (points,rebounds) ~ team + conf, data = df, FUN = mean, na. rm = TRUE ) team conf points rebounds 1 AE 2.000000 7.0 2AW 3.000000 8.0 3 BW 5.333333 4.0 4 CW 8.000000 13.5