r - как изменить положение строк в соответствии с их рангом - PullRequest
0 голосов
/ 09 июня 2018

Это примерный фрагмент кода:

df<-data.frame(c(14, 37, 15, 18, 1, 7))
df$rankk=rank(-df) 

и вот результат:

    Rank
14   4
37   1
15   3
18   2
 1   6
 7   5

Теперь я хочу, чтобы что-то вроде положения строк также менялось в соответствии с их рангами.Желаемый:

37   1
18   2
15   3
14   4
 7   5
 1   6

Заранее спасибо

1 Ответ

0 голосов
/ 09 июня 2018

В базе R вы ищете order

df <- df[order(df$rankk), ]

В мире теней вы должны использовать arrange:

df %<>%
   arrange(rankk)

Или еще лучше пропустить созданиестолбец ранга вообще,

df <- data.frame(x = c(14, 37, 15, 18, 1, 7))
# base R version
df <- df[order(-df$x), ]
# tidyverse version
df %<>%
   arrange(desc(x))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...