library(data.table)
dt <- data.table(cbind(id = c(rep("0151", 16), rep("4615", 16)),
date = rep(c("2011-08-09",
"2011-08-10",
"2011-08-12",
"2011-08-14",
"2011-08-15",
"2011-08-16",
"2011-08-17",
"2011-08-18",
"2011-08-19",
"2011-08-20",
"2011-08-23",
"2011-08-24",
"2011-08-27",
"2011-08-28",
"2011-08-30",
"2011-08-31"), 2),
count = c(c(7, 1, 0, 4, 1, 4, 2, 1, 0, 0, 0, 0, 0, 1, 0, 1),
c(0, 1, 3, 0, 1, 0, 5, 1, 0, 0, 5, 0, 1, 2, 0, 1))))
Для каждого идентификатора я ищу способ эффективно вычислить (и сохранить в новом столбце), сколько дней прошло с последнего дня, считающего> 0. Таким образом, 4-й столбец будет выглядеть так:
c(NA, 1, 2, 4, 1, 1, 1, 1, 1, 2, 5, 6, 9, 10, 2, 3, NA, NA, 2, 2, 3, 1, 2, 1, 1, 2, 5, 1, 4, 1, 2, 3)