R中的sort(),rank()和order()之间有什么区别?你能举例说明吗?
sort()
将向量按升序排序。
rank()
给出向量中存在的数字的相应等级,最小的数字获得等级1。
order()
以排序的顺序返回向量的索引。
例如:如果我们将这些函数应用于向量-c(3,1,2,5,5)
sort(c (3, 1, 2, 5, 4))
将给出c(1,2,3,4,5)
rank(c (3, 1, 2, 5, 4))
将给出c(3,1,2,5,4)
order(c (3, 1, 2, 5, 4))
将给出c(2,3,1,5,4)。如果按这些顺序排列这些索引,则将获得排序后的向量。注意v [2] = 1,v [3] = 2,v [1] = 3,v [5] = 4和v [4] = 5
在R中也有领带处理方法。如果运行,它将给出1至1的等级,因为当前有两个2,R会将它们分别排在2和3上,但是将它们分别分配给等级2.5,那么接下来的3将获得等级4.0,因此rank(c (3, 1, 2, 5, 4, 2))
rank(c (3, 1, 2, 5, 4, 2))
会给你输出[4.0 1.0 2.5 6.0 5.0 2.5]
希望这会有所帮助。