2014-11-25 94 views
9

說我有R中的陣列:10 7 4 3 8 2 一旦排序,這將是:1 2 3 4 7 8 10如何獲得排序後的數組元素的索引

什麼是R中的最好的方式從原始數組返回排序數組元素的索引。我正在尋找等的輸出: 6(指數爲2),4(3指數),3(4索引),2(7索引),5(8指數),1(的索引10)

回答

13

你要找的功能是order

> x 
[1] 10 7 4 3 8 2 
> order(x) 
[1] 6 4 3 2 5 1 
+0

感謝您的超快速響應:) – IAMTubby 2014-11-25 07:44:29

8

sortindex.return參數,默認情況下是FALSE

x <- c(10,7,4,3,8,2) 
sort(x, index.return=TRUE) #returns a list with `sorted values` 
#and `$ix` as index. 
#$x 
#[1] 2 3 4 7 8 10 

#$ix 
#[1] 6 4 3 2 5 1 

您可以提取index通過

sort(x, index.return=TRUE)$ix 
#[1] 6 4 3 2 5 1 
相關問題