我有一个检测事件数据框,其中的列提供个人的标签 ID (Tag)、检测开始时间 (StartDateTime_UTC)、检测结束时间 (EndDateTime_UTC) 和位置。
我想为每个标签汇总和总结这个数据框,每次位置发生变化时。对于每个标签和每个更改,我想采用 min(StartDateTime_UTC) 和 max(EndDateTime_UTC)。不幸的是,每个更改都没有固定数量的记录,因此简单的滚动摘要不起作用。
如果这会有所不同,则有 3 个可能的位置“IN”、“OUT”、“OVERLAP”
如果可能,我更喜欢使用包 dplyr 的解决方案。
对于下面提供的数据,输出将如下所示:
Tag StartDateTime_UTC EndDateTime_UTC location
1 5004.24 2014-10-15 15:26:16 2014-10-17 07:12:19 IN
2 5004.24 2014-10-17 07:15:43 2014-10-21 02:12:29 OUT
Run Code Online (Sandbox Code Playgroud)
示例数据:
structure(list(Tag = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, …Run Code Online (Sandbox Code Playgroud)