Если мы хотим заменить первое значение Date на NA, то сгруппируйте его по id и используйте replace
library(dplyr)
table1 <- table1 %>%
group_by(id) %>%
mutate(date1 = replace(date1, 1, NA))
Если дата1 не заказана
table1 %>%
arrange(id, as.Date(date1, '%d/%m/%Y')) %>%
group_by(id) %>%
mutate(date1 = replace(date1, 1, NA))
Или используя data.table
library(data.table)
setDT(table1)[, date1 := replace(date1, 1, NA), id]