R 以行条目为条件的日期差异计算

R 以行条目为条件的日期差异计算,r,data.table,R,Data.table,我在一列中有一些带有事件ID的事件条目,在另一列中有事件阶段,以及对应于每个事件ID和阶段的时间戳 一个事件可能有多个阶段,其中一些阶段在不同的时间重复。我的问题是有条件地计算这些事件的时间戳之间的差异。例如,对于一个事件,有一个入口,然后是一个阶段2。然后在第1阶段和第2阶段各进行10次。参赛作品的顺序和数量随着比赛项目的不同而变化,但入场始终是第一阶段。对于每个事件,我想计算阶段2和入口之间的差异,然后计算后续阶段2之间的差异 我找不到一个快速有效的解决方案 一个或多或少看起来像我的原始数据

我在一列中有一些带有事件ID的事件条目,在另一列中有事件阶段,以及对应于每个事件ID和阶段的时间戳

一个事件可能有多个阶段,其中一些阶段在不同的时间重复。我的问题是有条件地计算这些事件的时间戳之间的差异。例如,对于一个事件,有一个入口,然后是一个阶段2。然后在第1阶段和第2阶段各进行10次。参赛作品的顺序和数量随着比赛项目的不同而变化,但入场始终是第一阶段。对于每个事件,我想计算阶段2和入口之间的差异,然后计算后续阶段2之间的差异

我找不到一个快速有效的解决方案

一个或多或少看起来像我的原始数据帧的示例

library(data.table)
library(dplyr)
#
sampleFrame <- data.frame(id = sample(c(1:1000), 5000, replace = TRUE),
                      phase = sample(c("entrance", "phase1", "phase2",  "phase3"), 5000, replace =TRUE),
                      date = sample(c(1439678910:1445678999), 5000, replace = TRUE))
#
setDT(sampleFrame)
#
sampleFrame <- sampleFrame %>% arrange(id, date)
#
sampleFrame[, date := as.POSIXct(date, origin ="1970-01-01")]
#
库(data.table)
图书馆(dplyr)
#

样本框架请使用一个
集合。种子
,我得到的表格在
入口
s后有
阶段2
,每个ID有多个
入口
s。。。这是有意的吗?@mkemp6很抱歉回复得太晚了。它可以得到不止一个入口,但我过滤这些案例,这也是我真正的问题。现在,我们可以测量入口入口,阶段2入口,阶段2-阶段2。提前谢谢!