Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试对一行的值进行排名。我想看看哪个值最大,哪个是第二大等等。
这是一个简单的例子:
test = c(0.005,0.007,0.009,-0.0008,0.5,-0.074) order(test) [1] 6 4 1 2 3 5 which.max(test) [1] 5
which.max 函数正确地给了我最大值的列,但它没有给我第二大,第三大等,等等。
我相信我可以为此使用函数 order,但它的输出似乎不正确。
我究竟做错了什么?
你只需要使用递减参数:
> order(test,decreasing=T) [1] 5 3 2 1 4 6
或者反过来:
> rev(order(test)) [1] 5 3 2 1 4 6
如果您正在寻找值而不是索引,那么您应该使用sort
sort
sort(test,decreasing =TRUE) [1] 0.5000 0.0090 0.0070 0.0050 -0.0008 -0.0740