如何从R中的日期开始一周的开始日期

kri*_*ish 3 r date lubridate

我有一个包含日期的列的数据集.我想找到这些date值的周开始日期.

我使用week函数来获取周数lubridate.例如,

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

#Solution
[1] 16
Run Code Online (Sandbox Code Playgroud)

而不是weeknum,有没有办法获得一周的开始日期?在这种情况下,我期待"04/16/2017"或"2017年4月17日".如果周从周日或周一开始,我不是特别的.我看了这个问题,但没有从中得到很多.

Vam*_*ala 12

使用floor_date功能.

floor_date(as.Date("04/20/2017", "%m/%d/%Y"), unit="week")
Run Code Online (Sandbox Code Playgroud)

  • 值得一提的是,还可以通过 `floor_date(x, unit = 'week', week_start = 1)` 强制本周从星期一开始? (5认同)
  • 让你在运行 `floor_date` 之前添加 `library(lubridate)` (4认同)

Erd*_*kas 8

你可以在下面使用

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