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

时间:2016-02-11 20:47:12

标签: r data.table

我有一些事件条目,其中一列中包含事件ID,另一列中包含事件阶段,以及与每个事件id&对应的时间戳。相。

一个事件可能有很多阶段,其中一些事件在不同时间重复。我的问题是有条件地计算这些事件的时间戳之间的差异。例如,对于一个事件,有一个入口,然后是阶段2。然后是阶段1的10倍,再次是阶段2。条目的顺序和数量在不同事件之间变化,但入口始终是第一阶段。对于每个事件,我想计算阶段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")]
#

如何有条件地计算数据表/数据帧方式的时差?

0 个答案:

没有答案