📅  最后修改于: 2023-12-03 15:38:24.805000             🧑  作者: Mango
在 R 语言中,可以使用 dplyr
或 base
包中的函数进行 DataFrame(数据框)的排序。
在 R 中,使用以下命令安装 dplyr
包:
install.packages("dplyr")
在 R 中使用以下命令加载 dplyr
包:
library(dplyr)
使用 arrange()
函数对 DataFrame 进行排序,可以按照一个或多个变量进行排序。下面是示例代码:
# 随机生成一个 10 行 3 列的 DataFrame
df <- data.frame(
A = sample(letters[1:5], 10, replace = TRUE),
B = sample(1:10, 10),
C = sample(LETTERS[1:6], 10, replace = TRUE)
)
# 按变量 A 进行升序排序
arrange(df, A)
# 按变量 A 和 B 进行降序排序
arrange(df, desc(A), desc(B))
输出结果如下所示:
# 按变量 A 进行升序排序
A B C
1 a 1 E
2 a 2 C
3 b 6 C
4 b 7 D
5 c 3 A
6 c 4 C
7 c 9 C
8 d 5 B
9 d 10 F
10 e 8 D
# 按变量 A 和 B 进行降序排序
A B C
1 e 8 D
2 d 10 F
3 d 5 B
4 c 9 C
5 c 4 C
6 c 3 A
7 b 7 D
8 b 6 C
9 a 2 C
10 a 1 E
使用 order()
函数对 DataFrame 进行排序,可以按照一个或多个变量进行排序。下面是示例代码:
# 随机生成一个 10 行 3 列的 DataFrame
df <- data.frame(
A = sample(letters[1:5], 10, replace = TRUE),
B = sample(1:10, 10),
C = sample(LETTERS[1:6], 10, replace = TRUE)
)
# 按变量 A 进行升序排序
df[order(df$A), ]
# 按变量 A 和 B 进行降序排序
df[order(df$A, df$B, decreasing = TRUE), ]
最终结果和上面使用 dplyr
包中 arrange()
函数排序的结果相同。
# 按变量 A 进行升序排序
A B C
1 a 2 D
2 a 5 F
3 b 1 D
4 b 6 D
5 c 5 B
6 c 6 C
7 d 1 E
8 d 2 C
9 e 3 B
10 e 7 C
# 按变量 A 和 B 进行降序排序
A B C
5 c 6 C
6 c 5 B
4 b 6 D
3 b 1 D
8 d 2 C
7 d 1 E
2 a 5 F
1 a 2 D
10 e 7 C
9 e 3 B
以上就是在 R 中对 DataFrame 进行排序的介绍。