2014-11-25 12 views
9

Powiedz, mam tablicę w R: 10 7 4 3 8 2 Upon sortowania, byłoby to: 2 3 4 7 8 10jak zdobyć indeks sortowanych elementów tablicy

Jaki jest najlepszy sposób na R zwrócić indeksy posortowanych elementów tablicy z oryginalnej tablicy. Szukam wyników takich jak: 6 (indeks 2), 4 (indeks 3), 3 (indeks 4), 2 (indeks 7), 5 (indeks 8), 1 (indeks 10)

Odpowiedz

13

funkcja szukasz jest order:

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

Dzięki za super szybką odpowiedź :) – IAMTubby

8

sort ma index.return argument, który domyślnie jest 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 

można wyodrębnić index przez

sort(x, index.return=TRUE)$ix 
#[1] 6 4 3 2 5 1 
Powiązane problemy