如何从R中的日期获取周开始日期

How to get week starting date from a date in R

我有一个包含日期列的数据集。我想找到那些 date 值的星期开始日期。

我使用 lubridate 中的 week 函数获取周数。 例如,

week(as.Date("04/20/2017", "%m/%d/%Y"))

#Solution
[1] 16

有没有办法获取一周的开始日期,而不是 weeknum?在这种情况下,我期待“04/16/2017”或“04/17/2017”。如果一周从星期日或星期一开始,我不是很特别。 我查看了 个问题,但没有得到太多信息。

使用 lubridate 包中的 floor_date 函数。

library("lubridate")
floor_date(as.Date("04/20/2017", "%m/%d/%Y"), unit="week")

您可以在下方使用

as.Date(format(as.Date("04/20/2017", "%m/%d/%Y"),"%Y-%W-1"),"%Y-%W-%u")
[1] "2017-04-17"