Расчет максимального времени в четырех разных столбцах R - PullRequest
0 голосов
/ 29 мая 2020

Используя R в кадре данных, у меня есть четыре столбца формата времени, в которых я хочу вычислить максимальное время для каждой строки. В некоторых случаях в случайных ячейках есть НА. Я использовал apply (X, 1, max), но это не сработало. Затем я попытался заменить NA на X [is.na (x)] <- 0, но тоже безуспешно. Может ли кто-нибудь помочь мне с этими двумя проблемами? </p>

a sample of the dataframe can be seen in this image

1 Ответ

2 голосов
/ 29 мая 2020

Как насчет добавления столбца напрямую с помощью tidyverse и pmax?

Пример ниже:

library(tidyverse) 
Date1 = c(as.Date('2020-01-01'), as.Date('2020-05-06'), NA, NA, NA)
Date2 = c(as.Date('2020-07-06'), as.Date('2020-03-06'), NA, NA, NA)
Date3 = c(as.Date('2020-08-06'), NA, NA, NA, as.Date('2020-03-06'))
df = data.frame(Date1 = Date1, Date2 = Date2, Date3 = Date3)

df %>% 
  mutate(maxdate = pmax(Date1, Date2, Date3, na.rm = TRUE))

Date1         Date2      Date3       maxdate
2020-01-01   2020-07-06  2020-08-06  2020-08-06
2020-05-06   2020-03-06  <NA>        2020-05-06
   <NA>       <NA>       <NA>        <NA>
   <NA>       <NA>       <NA>        <NA>
   <NA>      <NA>        2020-03-06  2020-03-06
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...