我正在尝试对行的值进行排名。我想看看哪个值最大,哪个是第二大等等。
这是一个简单的例子:
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正确地给了我最大值的列,但它没有给我第二大,第三大等等。
我相信我可以使用函数顺序,但是输出似乎不正确。
我做错了什么?
答案 0 :(得分:0)
您只需使用减少参数:
> order(test,decreasing=T)
[1] 5 3 2 1 4 6
或者反过来:
> rev(order(test))
[1] 5 3 2 1 4 6
答案 1 :(得分:0)
如果您正在寻找值而不是索引,那么您应该使用sort
sort(test,decreasing =TRUE)
[1] 0.5000 0.0090 0.0070 0.0050 -0.0008 -0.0740