Если мы создадим упорядоченный коэффициент для столбцов Action
, мы можем принять значение max
для каждого ID
.
Используя базу R, мы можем использовать
aggregate(Action~ID, transform(df,
Action = factor(Action, levels = paste0('A', 1:3), ordered = TRUE)), max)
# ID Action
#1 id1 A2
#2 id2 A3
Или в dplyr
library(dplyr)
df %>%
mutate(Action = factor(Action, levels = paste0('A', 1:3), ordered = TRUE)) %>%
group_by(ID) %>%
summarise(Action = max(Action))
данных
df <- structure(list(ID = structure(c(1L, 1L, 1L, 2L, 2L), .Label = c("id1",
"id2", "id3"), class = "factor"), Action = structure(c(1L, 2L,
2L, 3L, 3L), .Label = c("A1", "A2", "A3"), class = "factor")), row.names = c(NA,
5L), class = "data.frame")