排序函数-R语言系列
R
语言中内置了相关函数,能够快速的进行排序相关的操作,主要相关函数有rank()
、sort()
和order()
,下面对这些函数分别进行介绍。
rank()
函数
rank()
函数主要返回向量中各个元素的大小排名,默认按照升序方式排列。
例如:
> data <- c(4, -10, 8, 0)
> rank(data)
[1] 3 1 4 2
4在所有元素中,按照由小到大排名第三,因此rank()
函数返回的第一个值是3。
sort()
函数
sort()
函数主要返回向量中各个元素的排序结果,默认按照升序方式。
例如:
> data <- c(4, -10, 8, 0)
> sort(data)
[1] -10 0 4 8
order()
函数
order()
函数主要返回排序后向量中各个元素的索引,默认按照升序方式。
例如:
> data <- c(4, -10, 8, 0)
> order(data)
[1] 2 4 1 3
> data[order(data)]
[1] -10 0 4 8
order()
函数的一个重要应用是能够对data.frame按照某一列排序,例如:
> my_data <- data.frame(data, y = LETTERS[1:4])
> my_data
data y
1 4 A
2 -10 B
3 8 C
4 0 D
> my_data[order(my_data$data), ]
data y
2 -10 B
4 0 D
1 4 A
3 8 C