在C语言中,一般需要我们自己去写一个排序算法,比如冒泡或者快排等,但在R语言中已经内置了一些函数,可以帮助我们快速地进行排序和相关操作,下面我们来详细看一下:
函数说明:默认对向量进行升序排序,并将排序后的结果返回
data <- c(4, 2, 9, 8)
sort(x = data)
返回结果:
[1] 2 4 8 9
Note:返回值并不会修改原对象的值,如果需要的话,可以修改为:
data <- sort(x = data)
如果想要进行降序排列的话,只需增加一个入口参数即可
data <- c(4, 2, 9, 8)
sort(x = data,decreasing = TRUE)
如果向量中存在缺省值NA,那么可以设置其入口参数na.last = TRUE,否则NA值将不会从参与排序
data <- c(4, 2, 9, 8, NA)
sort(x = data, na.last = TRUE)
返回结果:
[1] 2 4 8 9 NA
函数说明:指出排序后的向量中各元素在原向量中的索引,默认升序
data <- c(1, 6, 0, 8)
order(data)
返回结果:
[1] 3 1 2 4
函数还有其他的参数:
order(... = data, na.last = TRUE,decreasing = TRUE)
... 表示待排序向量
na.last 表示时候将NA值放在最后面(默认排序忽略NA)
decreasing 表示是否按照降序排序,默认升序。
函数说明:指出当前向量中各元素大小的排名,默认升序
data <- c(1, 6, 0, 8)
rank(data)
返回结果:
[1] 2 3 1 4
函数还有其他的参数:
rank(x = data, na.last = TRUE)
x 表示待排序的向量
na.last 表示是否排序时是否将NA放在最后面,默认忽略NA
其他说明:上述三种函数,实际中还有其他的入口参数,但由于并不常用,因此并未列出,如果读者需要,可以自行查阅R语言的帮助文档。