R 检查日期是否在时间范围内

R 检查日期是否在时间范围内,r,time,R,Time,我有两个数据集,一个数据集在不同ID的特定时间点上有值,另一个数据集有多个ID的时间框架。现在我想检查dataframe one中的时间点是否在与ID匹配的dataset 2中的任何时间帧内。 例如: df1: df2: 我想要什么 df1_新: 任何帮助都将不胜感激 一个选项可以是: 库(tidyverse) 图书馆(lubridate) #>日期、相交、设置差异、联合 df_1% as_tible()%>% 变异(mark=map2\u dbl(日期时间,数据,~+any(.x%在%间隔内(

我有两个数据集,一个数据集在不同ID的特定时间点上有值,另一个数据集有多个ID的时间框架。现在我想检查dataframe one中的时间点是否在与ID匹配的dataset 2中的任何时间帧内。 例如:

df1:

df2:

我想要什么 df1_新:

任何帮助都将不胜感激

一个选项可以是:

库(tidyverse)
图书馆(lubridate)
#>日期、相交、设置差异、联合
df_1%
as_tible()%>%
变异(mark=map2\u dbl(日期时间,数据,~+any(.x%在%间隔内(.y$start,.y$end)))%>%
选择(-数据)
#>#tibble:5 x 5
#>ID日期时间日期\时间标记
#>                            
#> 1     1 14.04.2020 11:00:00 2020-04-14 11:00:00     0
#> 2     1 14.04.2020 18:00:00 2020-04-14 18:00:00     1
#> 3     1 15.04.2020 10:00:00 2020-04-15 10:00:00     0
#> 4     1 15.04.2020 20:00:00 2020-04-15 20:00:00     1
#> 5     1 16.04.2020 11:00:00 2020-04-16 11:00:00     1
由(v2.0.0)于2021年5月25日创建

ID  date           time
1   2020-04-14   11:00:00
1   2020-04-14   18:00:00
1   2020-04-15   10:00:00
1   2020-04-15   20:00:00
1   2020-04-16   11:00:00
1   ...
2   ...
ID  start                  end
1  2020-04-14  16:00:00  2020-04-14 20:00:00
1  2020-04-15  18:00:00  2020-04-16 13:00:00
2  ...
2
ID  date           time      mark
1   2020-04-14   11:00:00   0
1   2020-04-14   18:00:00   1
1   2020-04-15   10:00:00   0
1   2020-04-15   20:00:00   1
1   2020-04-16   11:00:00   1
1   ...
2   ...