Как отсортировать похожие объекты в кадре данных в R - PullRequest
0 голосов
/ 17 июня 2020

изображение 1 - это фрейм данных, который я хочу изменить. и я хочу изменить его таким образом, чтобы значения столбца C, соответствующие аналогичным объектам столбца B, располагались в порядке возрастания.

это то, что я пробовал до сих пор:

summarize (df$V2, order(df$V2, descending=FALSE))

1 Ответ

0 голосов
/ 17 июня 2020

Попробуйте следующее:

library(tidyverse)

df <- data %>% 
  select(-A) %>% 
  group_by(B) %>%
  arrange(B, C) %>% 
  bind_cols(data[, 1]) %>% 
  select(A, everything()) %>% 
  ungroup()
df

# A tibble: 7 x 3
  A     B         C
  <chr> <chr> <dbl>
1 a1    M_01    191
2 a2    M_01    199
3 b1    M_01    232
4 c1    M_02    324
5 c1    M_02    433
6 d1    M_03    164
7 d2    M_04    288

Данные

data <- tibble::tribble(
  ~A, ~B, ~C,
  "a1", "M_01", 232,
  "a2", "M_01", 191,
  "b1", "M_01", 199,
  "c1", "M_02", 433,
  "c1", "M_02", 324,
  "d1", "M_03", 164,
  "d2", "M_04", 288,
)
data

# A tibble: 7 x 3
  A     B         C
  <chr> <chr> <dbl>
1 a1    M_01    232
2 a2    M_01    191
3 b1    M_01    199
4 c1    M_02    433
5 c1    M_02    324
6 d1    M_03    164
7 d2    M_04    288
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...