Пожалуйста, предоставьте свой собственный код, данные и желаемый вывод, чтобы получить наиболее полезные для вас ответы ...
Ниже представлен подход data.table
, который рассчитывает длительность для каждого идентификатора на основе первой и последней записи каждой группы идентификаторов.
library( data.table )
df <- data.frame( date = c(as.Date("2018-01-01"), as.Date("2018-02-04"), as.Date("2018-01-02"), as.Date("2018-02-04") ),
id = c(100,100,110,110),
stringsAsFactors = FALSE)
df
# date id
# 1 2018-01-01 100
# 2 2018-02-04 100
# 3 2018-01-02 110
# 4 2018-02-04 110
setDT(df)[, difftime( date[.N], date[1] ), by = id][]
# id V1
# 1: 100 34 days
# 2: 110 33 days