У меня есть следующий фрейм данных, я хочу найти имя столбца с минимальной датой для каждого идентификатора.
id a_date b_date c_date d_date
1 2014-01-01 2014-01-05 2014-01-15 NA
2 2017-02-01 NA NA 2015-03-01
Что такое:
df <- tibble(id = c(1, 2),
a_date = c("01/01/14", "01/02/17"),
b_date = c("05/01/14", NA),
c_date = c("15/01/14", NA),
d_date = c(NA, "01/03/15"))
Я пробовал это, но не сработало
df %>% group_by(id) %>%
mutate( min = pmin(a_date, b_date, c_date, d_date ,na.rm=TRUE) %>%
mutate(col_name = which(colnames(df)== min)
Ожидаемый результат будет как ниже
id col_name
1 a_date
2 d_date