2015-03-02 2 views
0

Скажет, у меня есть мои данные x и случайный вектор порядка:Как найти вектор обратного заказа в R?

rand_order <- sample(length(x)) 

теперь я могу переставить мои данные с этим случайным порядком и сделать что-то с ними:

y <- x[rand_order] 

Теперь, как я могу инвертировать -регулярный y? То есть как я могу найти inverse_rand_order так, чтобы y[inverse_rand_order] == x?

ответ

3

магазин ваш индекс заказа, а затем использовать order на нем:

x <- 1:10 
z <- sample(length(x)) 
y <- x[z] 
# [1] 4 1 10 6 9 5 2 8 3 7 

y[order(z)] 
# [1] 1 2 3 4 5 6 7 8 9 10 
+0

Хороший трюк, спасибо! – TMS

Смежные вопросы