Как я могу изменить самую последнюю дату по сравнению с контрольной датой по идентификатору с помощью Tidyverse?

#r

Вопрос:

Я ищу решение в Tidyverse для достижения следующей цели. Я хочу выбрать самую последнюю дату для каждой заданной даты («дата назначения») по идентификатору («номер клиента»).

Ввод данных:

Номер клиента Дата назначения
1 2021-06-03
1 2021-07-01
1 2021-08-26
2 2019-08-01
2 2019-08-15
2 2019-09-02

Желаемый результат:

Номер клиента Дата назначения Последнее назначение
1 2021-06-03 NA
1 2021-07-01 2021-06-03
1 2021-08-26 2021-07-01
2 2019-08-01 NA
2 2019-08-15 2019-08-01
2 2019-09-02 2019-08-15

Ответ №1:

Мы группируем по номеру клиента, а затем берем lag

 library(dplyr) df1 %gt;%  group_by(Client_number) %gt;%  mutate(Last_appointment = lag(Appointment_date)) %gt;%  ungroup