Как отформатировать дату как «YYYY-Mon» с Lubridate? - PullRequest
0 голосов
/ 23 сентября 2018

Я хотел бы создать вектор дат между двумя указанными моментами времени с шагом 1 месяц, как описано в этой теме ( Создать вектор всех дней между двумя датами ), чтобы затем преобразоватьв факторы для визуализации данных.

Тем не менее, я бы хотел, чтобы даты были указаны в YYYY-Mon, т.е.2010-февраль, формат.Но до сих пор мне удавалось иметь только даты в стандартном формате 2010-02-01, используя такой код:

require(lubridate)
first <- ymd_hms("2010-02-07 15:00:00 UTC")
start <- ymd(floor_date(first, unit="month"))

last <- ymd_hms("2017-10-29 20:00:00 UTC")
end <- ymd(ceiling_date(last, unit="month"))

> start
[1] "2010-02-01"

> end
[1] "2017-11-01"

Как я могу изменить формат на YYYY-Mon?

1 Ответ

0 голосов
/ 23 сентября 2018

Вы можете использовать format():

start %>% format('%Y-%b')

Чтобы создать вектор, используйте seq():

seq(start, end, by = 'month') %>% format('%Y-%b')

Obs: используйте заглавную букву «B» для полного названия месяца:'%Y-%B'.

...