对于测试数据集,如下所示,
testdf1< - structure(list(ShinyUsrId = c(16338,16338,16338,16338,16338), ButtonId = c(11,12,11,11,14),V3 = c(1519971165, …
正如你的功能所用 <<- 操作员,我不确定你能直接做到。一种方法是分裂你的 data.frame 进入 list 的 data.frames 通过 ShinyUsrId 然后使用 map_dfr() ,但如何摆脱 <<- 和 accumulate() 利用 lag() ?
<<-
data.frame
list
data.frames
ShinyUsrId
map_dfr()
accumulate()
lag()
Collpase_testdf1 <- testdf1 %>% group_by(ShinyUsrId) %>% mutate(date_groups = cumsum(time_diff - lag(time_diff, default = 0) > 60)) %>% group_by(ShinyUsrId, date_groups) %>% summarise( ButtonId = paste(ButtonId , collapse = ", "), time_diff = paste(timediff, collapse = ", ") )