完整指南:如何在 r 中使用 aggregate() 函数


R 中的Aggregate()函数可用于计算一组数据的汇总统计量。

该函数使用以下基本语法:

聚合(x,by,FUN)

金子:

  • x :要聚合的变量
  • by :要分组的变量列表
  • FUN :要计算的汇总统计数据

以下示例展示了如何在 R 中使用以下数据框实际使用此函数:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 position=c('G', 'G', 'F', 'G', 'F', 'F'),
                 points=c(99, 90, 86, 88, 95, 99),
                 assists=c(33, 28, 31, 39, 34, 23),
                 rebounds=c(30, 28, 24, 24, 28, 33))

#view data frame
df

  team position points assists rebounds
1 AG 99 33 30
2 AG 90 28 28
3 AF 86 31 24
4 BG 88 39 24
5 BF 95 34 28
6 BF 99 23 33

示例 1:每组的总体平均值

以下代码显示如何使用Aggregate()函数计算每支球队的平均得分:

 #find mean points by team
aggregate(df$points, by=list(df$team), FUN=mean)

  Group.1 x
1 A 91.66667
2 B 94.00000

这告诉我们:

  • A队球员场均得分为91.67分。
  • B队球员场均得分94分。

请注意,您还可以使用colnames()函数更改输出中的列名称:

 #find mean points by team
agg <- aggregate(df$points, by=list(df$team), FUN=mean)

#rename columns in output
colnames(agg) <- c(' Team ', ' Mean_Points ')

#viewoutput
agg

  Team Mean_Points
1 A 91.66667
2 B 94.00000

示例 2:按组聚合帐户

以下代码展示了如何使用Aggregate()函数来统计每队的球员人数:

 #count number of players per team
aggregate(df$points, by=list(df$team), FUN=length)

  Group.1 x
1 to 3
2 B 3

这告诉我们:

  • A队由3名队员组成。
  • B队由3名队员组成。

示例 3:每组的总和

以下代码显示如何使用Aggregate()函数计算每个团队的得分总和:

 #find sum of points scored by team
aggregate(df$points, by=list(df$team), FUN=sum)

  Group.1 x
1 to 275
2 B 282

这告诉我们:

  • A队总分275分。
  • B队总分282分。

示例 4:聚合多列

以下代码演示如何使用Aggregate()函数查找按球队和位置分组的平均得分:

 #find mean of points scored, grouped by team and position
aggregate(df$points, by=list(df$team, df$position), FUN=mean)

  Group.1 Group.2 x
1AF 86.0
2 BF 97.0
3 AG 94.5
4 BG 88.0

这告诉我们:

  • A队“F”位置的球员平均得分为86分。
  • B队的“F”位球员平均得分为97分。
  • A队“G”位置的球员平均得分为94.5分。
  • B队“G”位置的球员平均得分为88分。

其他资源

以下教程解释了如何使用 R 中的其他常用函数:

如何在 R 中使用 table() 函数
如何在 R 中使用 gsub() 函数
如何在R中使用summary()函数

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注