Дата манипулирования в столбце данных - PullRequest
1 голос
/ 17 апреля 2019

Обновите столбец dataframe, указав дату, которая больше сегодняшней, вычтя 1 год из этой даты

f1 %>% filter(Fresh.email.date > today()) %>% ymd(list(Fresh.email.date)) - years(1)

1 Ответ

1 голос
/ 17 апреля 2019

Нам не нужно filter, если целью является обновление исходного столбца. Используя case_when, мы создаем логическое условие и вычитаем один год, когда дата больше today() или возвращаем дату

library(dplyr)
df1 %>%
   mutate(Fresh.email.date = ymd(Fresh.email.date), 
         Fresh.email.date = case_when(Fresh.email.date > today() ~ 
                            Fresh.email.date - years(1), 
       TRUE ~ Fresh.email.date))
...