R-Преобразовать календарный день в неделю финансового года, которая считается неделей с воскресенья? - PullRequest
1 голос
/ 07 января 2020

Я использовал week () и strftime () для преобразования дня в неделю в R, но функции устанавливают начальный день с понедельника, а не воскресенья, преобразование дня календарного года в неделю финансового года отключается. Мой финансовый год начинается с 1 октября, и 2017-10-01 должен быть неделей 1. Однако strftime () считает неделю с понедельника, неделю '2017-10-01 ', то есть воскресенье, вычитает' 2017-9- 30 ', то есть суббота, становится 0 вместо 1.

> as.numeric(strftime("2017-10-1", format = "%V"), format = "%V")-as.numeric(strftime("2017-9-30", format = "%V"))
[1] 0

Как преобразовать календарный день в неделю финансового года, которая считается неделей с воскресенья?

1 Ответ

1 голос
/ 07 января 2020

Используйте "%U", который отсчитывает неделю с воскресенья. From ?strptime

% U - неделя года в виде десятичного числа (00–53) с использованием воскресенья в качестве первого дня 1 недели (и обычно с первым воскресением года в качестве дня 1 недели 1). Соглашение США.

as.numeric(strftime("2017-10-1", format = "%U")) - 
          as.numeric(strftime("2017-9-30", format = "%U"))
#[1] 1

Вы также можете использовать week из lubridate

library(lubridate)
week(ymd('2017-10-1')) - week(ymd('2017-9-30'))
#[1] 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...