R:比较两组 lubridates 日期

R: compare two sets of lubridates dates

我试图找到两个润滑日期向量的交集。但是,在应用 lubridate::intersect 函数之后,日期将转换为双精度。

library(lubridate)
> a <- c(ymd("2017-01-01"), ymd("2017-01-02"), ymd("2017-01-03"), ymd("2017-01-04"))
> b <- c(ymd("2017-01-02"), ymd("2017-01-03"), ymd("2017-01-04"), ymd("2017-01-05"))
> lubridate::intersect(a, b)
[1] 17168 17169 17170

如何保留原始日期类型?

我们可以通过指定 origin

将其转换回 Dateas.Date
as.Date(lubridate::intersect(a, b), origin = '1970-01-01')
#[1] "2017-01-02" "2017-01-03" "2017-01-04"