Как я могу заказать два вектора в R на сортировке одного? - PullRequest
0 голосов
/ 06 мая 2018

Мой вопрос касается двух следующих векторов:

list_1 <- c(17.5, 19.3, 17.0, 16.5, 19.4, 19.0, 19.6, 20.7, 18.5, 19.0, 20.2, 
             21.0, 19.7, 19.5, 17.0, 20.2, 19.3, 19.6, 19.9, 18.4, 18.6, 19.5)
list_2 <- c(24.5, 24.5, 24.0, 23.9, 25.8, 27.5, 29.1, 26.5, 28.1, 26.5, 
29.2, 30.5, 27.0, 28.5, 25.2, 28.5, 29.1, 29.1, 26.8, 27.8, 26.5, 26.8)

Значения в обоих векторах коррелированы, это означает, что, например, 17.5 (list_1) и 24.5 (list_2) принадлежат друг другу.

Я хочу упорядочить list_1 от маленького к большому, и упорядочить list_2 относительно нового размещения значения, с которым оно соотносится в list_1, таким образом, сохраняя 17.5 и 24.5 вместе в одном и том же месте в обоих списках.

Как мне этого добиться? Заранее спасибо.

1 Ответ

0 голосов
/ 06 мая 2018
list_1 <- c(17.5, 19.3, 17.0, 16.5, 19.4, 19.0, 19.6, 20.7, 18.5, 19.0, 20.2, 
        21.0, 19.7, 19.5, 17.0, 20.2, 19.3, 19.6, 19.9, 18.4, 18.6, 19.5)
list_2 <- c(24.5, 24.5, 24.0, 23.9, 25.8, 27.5, 29.1, 26.5, 28.1, 26.5, 
        29.2, 30.5, 27.0, 28.5, 25.2, 28.5, 29.1, 29.1, 26.8, 27.8, 26.5, 26.8)

df <- data.frame(list_1, list_2)

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

list2 <- df$list_2

Демо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...