📜  使用 R 中的 Dplyr 包按组对变量进行排名

📅  最后修改于: 2022-05-13 01:55:15.545000             🧑  作者: Mango

使用 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))

输出: