使用 R 中的 Dplyr 包按组对变量进行排名
在本文中,我们将了解如何使用 R 编程语言中的 dplyr 按组对变量进行排名。
R 中的 dplyr 包用于在 R 中执行突变和数据操作。它对于处理数据框和数据表特别有用。可以使用以下命令下载软件包并将其安装到工作目录中:
install.packages("dplyr")
按升序排列
调用arrange()方法将数据框的数据按升序或降序排列。它用于根据变量名称重新排序数据框的行。
arrange(col-name)
接下来是 group_by 方法的应用,该方法将用于对数据进行分组的列名称集作为参数。它可以包括一个或多个列。
group_by(col-name1, col-name2..)
然后可以将 mutate() 方法应用于数据帧,以通过更改存储在数据帧中的数据的方向来执行操作或修改。 rank() 方法用于为映射到分配的组的数据值分配数字排名。默认情况下,排名按升序显示。
rank(col-name)
代码:
R
library("dplyr")
# creating a data frame
data_frame <- data.frame(col1 = rep(letters[1:3],each = 4),
col2 = 1:12)
print ("Original Dataframe")
print (data_frame)
data_frame %>% arrange(col1, col2) %>%
group_by(col1) %>%
mutate(rank = rank(col2))
R
library("dplyr")
# creating a data frame
data_frame <- data.frame(col1 = rep(letters[1:3],each = 4),
col2 = 1:12)
print ("Original Dataframe")
print (data_frame)
# ranking by col1 variable
print ("Modified Dataframe")
# ranking in descending order
data_frame %>% arrange(col1, col2) %>%
group_by(col1) %>%
mutate(rank = rank(-col2))
输出:
按排名降序排列
为了按降序显示排名,列名称前面带有减号。这将按降序显示向量的数字等级。可以将新列名分配给此方法的输出。输出数据框包含一个与指定名称同名的附加列。
电阻
library("dplyr")
# creating a data frame
data_frame <- data.frame(col1 = rep(letters[1:3],each = 4),
col2 = 1:12)
print ("Original Dataframe")
print (data_frame)
# ranking by col1 variable
print ("Modified Dataframe")
# ranking in descending order
data_frame %>% arrange(col1, col2) %>%
group_by(col1) %>%
mutate(rank = rank(-col2))
输出: