изменить дату выходного дня на день недели в R - PullRequest
0 голосов
/ 11 февраля 2020

Я читаю в файле Excel на R и вычисляю дату за 6 месяцев до даты. Если дата выпадает на выходные, необходимо изменить дату на следующий день недели.

, например: если дата 2020-2-7, то за шесть месяцев до 2019-08-11. Который воскресенье Как изменить дату на 2019-08-12?

Я попробовал следующий код:

date <- as.date.character("2020-2-7")
nxtd <- date-180
if(weekdays(nxtd)=="Saturday"){nxtd <- date-182} else if(weekdays(nxtd)=="Sunday"){nxtd <- date-181}
else{nxtd <- date-180}

этот код выдает ошибку / предупреждение "условие имеет длину> 1 и только будет использоваться первый элемент "

Как мне его разрешить?

1 Ответ

0 голосов
/ 11 февраля 2020
library(lubridate)
d1 = as.Date("2020-2-9")
d2 = d1 - 180
if(weekdays(d2) %in% c("Saturday", "Sunday")){
    floor_date(d2 - 3, "week") + 8
} else {
    d2
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...