lubridate的floor_date
(以及类似的ceiling_date
和round_date
)可以向下舍入为多个时间单位(例如"7 days"
),但断点嵌套在另一个未指定的单位内时间。是否可以指定其他时间单位(或类似的发生舍入的断点)?如何知道正在使用哪个单元?
例如,获取以下连续六天的示例:
x <- as.Date("2019-05-27") + 0:5
并将每个日期四舍五入为最接近的7天增量:
x_7d <- lubridate::floor_date(x, "7 days")
请注意,这六个连续的日期被分配给三个单独的7天间隔,其中一个间隔只有三天(05-29至05-31)。
#> data.frame(x, x_7d)
# x x_7d
#1 2019-05-27 2019-05-22
#2 2019-05-28 2019-05-22
#3 2019-05-29 2019-05-29
#4 2019-05-30 2019-05-29
#5 2019-05-31 2019-05-29
#6 2019-06-01 2019-06-01
似乎“ 7天”间隔是预先定义的,并且每个月都会发生一次,但是可以修改吗?是否可以在每年或用户定义的时间段内(例如,从2019-05-27开始)将时间间隔调整为7天?