Создайте последовательность дат на каждый последний день месяца

0

Вопрос

Я пытаюсь создать последовательность дат на каждый последний день месяца. Например, дата начала - "2018-01-31". Я хочу создать последовательность каждого последнего дня месяца с даты начала.

[1] "2018-01-31" "2018-02-28" "2018-03-31" "2018-04-30" "2018-05-31" "2018-06-30"

Я пытаюсь использовать этот синтаксис:

seq(as.Date("2018-01-31",format="%Y-%m-%d"),by="month",length.out=6)

Но вместо этого он выдает этот результат:

[1] "2018-01-31" "2018-03-03" "2018-03-31" "2018-05-01" "2018-05-31" "2018-07-01"

Как узнать последний день каждого месяца с даты начала?

date r seq
2021-11-23 08:04:39
2

Лучший ответ

5

Если вы хотите последний день месяца, вместо того, чтобы начинать с 2018-01-31, попробуй

seq(as.Date("2018-02-01",format="%Y-%m-%d"),by="month",length.out=6) -1
[1] "2018-01-31" "2018-02-28" "2018-03-31" "2018-04-30" "2018-05-31" "2018-06-30"
2021-11-23 08:07:48
5

Мы можем использовать lubridate упаковка и ее %m+% оператор:

library(lubridate)

as.Date("2018-01-31") %m+% months(0:5)
#> [1] "2018-01-31" "2018-02-28" "2018-03-31" "2018-04-30" "2018-05-31" "2018-06-30"
2021-11-23 08:13:56

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................