Так что у меня разные посетители, каждый из которых приходил более одного раза.
По датам посещения я получил интервалы посещения для каждого пациента.
Я хочу назначить эпизоды для каждого посещения каждого пациента в зависимости от их пробелов. Для Gap=0
(т. Е. 1-й визит любого нового пациента), Episode=1
. Если Gap>20
, Episode=previous episode+1
, если Gap<=20
, Episode=previous Episode
. И все начинается снова для нового пациента. Я хочу сделать это без использования цикла в R, предпочтительно в dplyr.
Данные:
Df <- data.frame(Visitors = c("V1","V1","V1","V1","V1","V1","V1","V2","V2","V2","V2","V2","V2","V3"),
Gap=c(0,6,18,35,43,9,11,0,3,67,98,12,2,0))
Это ожидаемая таблица:
Visitors Gap Episodes
V1 0 1
V1 6 1
V1 18 1
V1 35 2
V1 43 3
V1 9 3
V1 11 3
V2 0 1
V2 3 1
V2 67 2
V2 98 3
V2 12 3
V2 2 3
V3 0 1