Как вычесть 1 год из объекта даты в R? - PullRequest
0 голосов
/ 23 января 2019

У меня есть объект даты следующим образом:

'2013-01'

'2013-02'

...

Как вычесть 1 год из 2013, сохранив месяц без изменений, например

'2012-01'

'2012-02'

...

Ответы [ 2 ]

0 голосов
/ 23 января 2019

Проверка с as.POSIXlt

s=as.POSIXlt(paste0(str1,'-01'))
s$year=s$year-1
format(s,'%Y-%m')
[1] "2012-01" "2012-02"
0 голосов
/ 23 января 2019

Это можно сделать, преобразовав класс yearmon и затем вычтя 1

library(zoo)
format(as.yearmon(str1) - 1, '%Y-%m')
#[1] "2012-01" "2012-02"

Аналогично, для вычитания месяца используйте 1/12

format(as.yearmon(str1) - 1/12, '%Y-%m')

data

str1 <- c('2013-01', '2013-02')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...