Последний день 2017 года (2017-12-31) выпадает на воскресенье, то есть последняя неделя года содержит только 1 день, если я рассматриваю воскресенье как день начала моя неделя. Теперь я хотел бы с 2016-01-01 по 2016-01-07, чтобы быть связанным с 53-й неделей, и начать первую неделю с 2016-01-03, которая выпадает на воскресенье.Начать неделю в воскресенье как первый день недели
I имеют следующую структуру кадра данных:
require(lubridate)
range <- seq(as.Date('2017-12-26'), by = 1, len = 10)
df <- data.frame(range)
ddf$WKN <- as.integer(format(df$range + 1, '%V'))
df$weekday <- weekdays(df$range)
df$weeknum <- wday(df$range)
Это дало бы мне это:
df:
range WKN weekday weeknum
2017-12-26 52 Tuesday 3
2017-12-27 52 Wednesday 4
2017-12-28 52 Thursday 5
2017-12-29 52 Friday 7
2017-12-30 52 Saturday 7
2017-12-31 01 Sunday 1
2018-01-01 01 Monday 2
2018-01-02 01 Tuesday 3
2018-01-03 01 Wednesday 4
2018-01-04 01 Thursday 5
То, что я хотел бы иметь это:
df:
range WKN weekday weeknum
2017-12-26 52 Tuesday 3
2017-12-27 52 Wednesday 4
2017-12-28 52 Thursday 5
2017-12-29 52 Friday 7
2017-12-30 52 Saturday 7
2017-12-31 53 Sunday 1
2018-01-01 53 Monday 2
2018-01-02 53 Tuesday 3
2018-01-03 53 Wednesday 4
2018-01-04 53 Thursday 5
.
.
2018-01-07 01 Sunday 1
Может кто-нибудь точку меня в правильном направлении? @alistaire предоставил решение здесь Start first day of week of the year on Sunday and end last day of week of the year on Saturday Но я не предвидел эту ошибку здесь.