R 查找两个时间变量之间的缺失次数

R 查找两个时间变量之间的缺失次数,r,dplyr,R,Dplyr,我有两个时间变量 time1 6/15/16 8:00 6/15/16 9:00 6/15/16 10:00 6/16/16 8:00 6/16/16 9:00 6/17/16 8:00 6/18/16 8:00 6/18/16 8:30 6/18/16 9:10 6/19/16 8:00 6/20/16 8:00 6/20/16 11:00 time2 6/15/16 7:58 6/16/16 8:03 6/16/16 9:01 6/17/16 8:00 6/18/16 8:02 6/19/

我有两个时间变量

time1
6/15/16 8:00
6/15/16 9:00
6/15/16 10:00
6/16/16 8:00
6/16/16 9:00
6/17/16 8:00
6/18/16 8:00
6/18/16 8:30
6/18/16 9:10
6/19/16 8:00
6/20/16 8:00
6/20/16 11:00

time2
6/15/16 7:58
6/16/16 8:03
6/16/16 9:01
6/17/16 8:00
6/18/16 8:02
6/19/16 8:00
6/20/16 8:00
我想找出两个时间变量之间最接近的时间。我想在最后时刻保持一些界限,比如说4分钟。如果两次之间的时间差小于或等于4分钟,我想将两者相等,否则我想计算在限制之间不相等的值的数量。我的示例输出应该是

time1              time2     time difference    number of values missed
6/15/16 8:00    6/15/16 7:58       2                         2
6/16/16 8:00    6/16/16 8:03       3                         0
6/16/16 9:00    6/16/16 9:01       1                         0
6/17/16 8:00    6/17/16 8:00       0                         0
6/18/16 8:00    6/18/16 8:02       2                         2
6/19/16 8:00    6/19/16 8:00       0                         0
6/20/16 8:00    6/20/16 8:00       0                         1
其中,time1和time2相等,而time DIFFER是两者之间的分钟差,missed values of values values values values values变量将显示当前行和下一行之间不匹配的值的数量

我发现很难将其转化为代码。有没有人能提出一些想法来着手解决这个问题

感谢您提供的数据:

times1 <- structure(c(1466002800, 1466006400, 1466010000, 1466089200, 1466092800, 
1466175600, 1466262000, 1466263800, 1466266200, 1466348400, 1466434800, 
1466445600), class = c("POSIXct", "POSIXt"), tzone = "")

times2 <- structure(c(1466002680, 1466089380, 1466092860, 1466175600, 1466262120, 
1466348400, 1466434800), class = c("POSIXct", "POSIXt"), tzone = "")
times1%
过滤器(差异%
安排(时间1)%>%
变异(
未命中=匹配(时间1,时间1),
未接=c(差异(未接)-1,
长度(时间1)-尾部(缺失,n=1))
)
#时间1时间2差异未命中
#1 2016-06-15 08:00:00 2016-06-15 07:58:00 2分钟2
#2016-06-16 08:00:00 2016-06-16 08:03:00 3分钟0
#3 2016-06-16 09:00:00 2016-06-16 09:01:00 1分钟0
#4 2016-06-17 08:00:00 2016-06-17 08:00:00 0分钟
#5 2016-06-18 08:00:00 2016-06-18 08:02:00 2分钟2
#6 2016-06-19 08:00:00 2016-06-19 08:00:00 0分钟
#7 2016-06-20 08:00:00 2016-06-20 08:00:00 0分钟1
您的数据:

times1 <- structure(c(1466002800, 1466006400, 1466010000, 1466089200, 1466092800, 
1466175600, 1466262000, 1466263800, 1466266200, 1466348400, 1466434800, 
1466445600), class = c("POSIXct", "POSIXt"), tzone = "")

times2 <- structure(c(1466002680, 1466089380, 1466092860, 1466175600, 1466262120, 
1466348400, 1466434800), class = c("POSIXct", "POSIXt"), tzone = "")
times1%
过滤器(差异%
安排(时间1)%>%
变异(
未命中=匹配(时间1,时间1),
未接=c(差异(未接)-1,
长度(时间1)-尾部(缺失,n=1))
)
#时间1时间2差异未命中
#1 2016-06-15 08:00:00 2016-06-15 07:58:00 2分钟2
#2016-06-16 08:00:00 2016-06-16 08:03:00 3分钟0
#3 2016-06-16 09:00:00 2016-06-16 09:01:00 1分钟0
#4 2016-06-17 08:00:00 2016-06-17 08:00:00 0分钟
#5 2016-06-18 08:00:00 2016-06-18 08:02:00 2分钟2
#6 2016-06-19 08:00:00 2016-06-19 08:00:00 0分钟
#7 2016-06-20 08:00:00 2016-06-20 08:00:00 0分钟1

非常感谢!我想当这两个数据集都在同一个数据集中时,这会很好地工作。我有两个不同的数据集,都需要按状态、metro、日期分组,然后检查上述场景。很抱歉之前没有具体说明。您能告诉我一些方法吗?我不知道您的实际数据是如何构造的:我的解决方案是数据与您问题的数据完全相同。非常感谢!我想这两个数据集在同一个数据集中时效果很好。我有两个不同的数据集,都需要按照州、市、日期进行分组,然后检查上述场景。很抱歉之前没有具体说明。您能告诉我一些方法吗?我不知道您的actu所有数据都是结构化的:我的解决方案的数据与您的问题的数据相同。