Также обратите внимание, что ответ в связанном вопросе, на который вы ссылаетесь, может быть изменен для решения вашей проблемы следующим образом:
library(plyr)
ddply(df, "id", transform, inter.time = diff(c(as.Date('2011-01-01'), date)))
id date inter.time
1 1 2011-01-18 17 days
2 1 2011-01-31 13 days
3 2 2011-01-02 1 days
4 2 2011-01-15 13 days
То есть, если вы сначала конвертируете свои даты, используя as.Date()
при созданииваш фрейм данных:
id <- c(1,1,2,2)
date <- as.Date(c("2011-01-18","2011-01-31","2011-01-02","2011-01-15"))
df <- data.frame(id,date)