完整指南:如何在 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 中的其他常用函数: