如何使用 dplyr 按组对变量进行排序

您所在的位置:网站首页 怎样按照名称排序出来 如何使用 dplyr 按组对变量进行排序

如何使用 dplyr 按组对变量进行排序

2024-05-08 21:04| 来源: 网络整理| 查看: 265

如何使用 dplyr 按组对变量进行排序经过 本杰明·安德森博 7月 23, 2023 指导 0 条评论

您可以使用以下基本语法对 dplyr 中的变量进行分组:

df %>% arrange (group_var, numeric_var) %>% group_by (group_var) %>% mutate (rank = rank(numeric_var))

以下示例展示了如何在实践中使用以下数据框使用此语法:

#create data frame df % arrange (team, points) %>% group_by (team) %>% mutate (rank = rank(points)) # A tibble: 10 x 4 # Groups: team [3] team points rebounds rank 1 A 12 5 1 2 A 19 7 2 3 A 22 12 3 4 A 28 7 4 5 B 22 10 1 6 B 32 11 2 7 B 45 4 3 8 C 13 8 1 9 C 19 8 2 10 C 28 7 3示例2:按降序排列

我们还可以使用Rank()函数中的负号按组的降序对得分进行分类:

library (dplyr) #rank points scored in reverse, grouped by team df %>% arrange (team, points) %>% group_by (team) %>% mutate (rank = rank(-points)) # A tibble: 10 x 4 # Groups: team [3] team points rebounds rank 1 to 12 5 4 2 A 19 7 3 3 A 22 12 2 4 A 28 7 1 5 B 22 10 3 6 B 32 11 2 7 B 45 4 1 8 C 13 8 3 9 C 19 8 2 10 C 28 7 1 如何处理排名中的平局

我们可以使用tie.method参数来指定在对数值进行排序时应如何处理关系。

rank(points, ties. method = ' average ')

您可以使用以下选项之一来指定如何处理链接:

average :(默认)为每个链接的项目提供平均排名(排名第 3 和第 4 的项目都将获得 3.5 的排名)first :将第一个链接元素分配给最低排名(排名第 3 和第 4 位置的元素将分别获得排名 3 和 4)min :将每个链接的项目分配到最低排名(排名第 3 和第 4 的项目都将获得排名 3)max :为每个链接的项目分配最高排名(排名第 3 和第 4 的项目都将获得排名 4)random :为每个并列元素分配一个随机排名(与第三和第四位置并列的元素都可以接收任一排名)其他资源

以下教程解释了如何在 dplyr 中执行其他常用功能:

如何使用 dplyr 按组选择第一行如何使用 dplyr 计算相对频率如何使用 dplyr 对值重新编码如何在 dplyr 中用零替换 NA

关于作者安德森博本杰明·安德森博

大家好,我是本杰明,一位退休的统计学教授,后来成为 Statorials 的热心教师。 凭借在统计领域的丰富经验和专业知识,我渴望分享我的知识,通过 Statorials 增强学生的能力。了解更多

添加评论取消回复


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3