10

好吧,在决定了解 R 中的一些基本功能后,我偶然发现了该sort.list()功能。我得到了非常直接的sort()功能,但不明白sort.list(). 我读过它应该是一个排列函数,重新排列我的向量的内容(以某种方式)。

有向量;

x <- c(5.0, 3.0, 2.0, 2.2, 0.0, 5.0, 3.0, 2.0, 2.2)

运行sort.list(x)输出

[1] 5 3 8 4 9 2 7 1 6

那个是从哪里来的?有人可以给我一个提示吗?无论如何,这种排列有什么用?

谢谢。

4

1 回答 1

11

sort.list,正如它在 处所说?sort.list,与 相同order,只是它不接受多个参数...,而是只接受一个原子向量作为参数。

那么,据推测,它可能旨在作为order.

它有什么好处?考虑一下:

x <- c(5.0, 3.0, 2.0, 2.2, 0.0, 5.0, 3.0, 2.0, 2.2)
> x[sort.list(x)]
[1] 0.0 2.0 2.0 2.2 2.2 3.0 3.0 5.0 5.0
> x[order(x)]
[1] 0.0 2.0 2.0 2.2 2.2 3.0 3.0 5.0 5.0

就像order它返回一个排列一样,当用于索引原始向量时对其进行排序。

但我也认为这个名字令人困惑。

于 2012-05-01T16:01:56.047 回答