Dies ist eine Möglichkeit, im POSIXct
Universum zu bleiben lubridate
und Datumsformate nicht in Basis-Rs zu ändern POSIXt
. Ich vermeide es, das Datumsformat in meinen Skripten zu ändern, da es häufig vorkommt, dass Fehler (z. B. Zeitzonenänderungen oder Verlust von Zeitstempeln) auftreten. Es folgt dieser Rat %m+%
: R: Hinzufügen eines Monats zu einem Datum
library("lubridate")
posixct.in <- parse_date_time(x = "2016-02-29", orders = "ymd")
posixct.seq <- posixct.in %m+% years(x = seq.int(from = 0, to = 3, by = 1))
posixct.seq <- posixct.in %m+% months(x = seq.int(from = 0, to = 3, by = 1))
posixct.seq <- posixct.in %m+% days(x = seq.int(from = 0, to = 3, by = 1))
posixct.seq <- posixct.in %m+% weeks(x = seq.int(from = 0, to = 3, by = 1))
Ein regulärer +
funktioniert manchmal auch, aber das %m+%
verhindert Fehler wie diesen:
posixct.seq <- posixct.in + years(x = seq.int(from = 0, to = 3, by = 1))
Zuerst war ich verwirrt, weil ich dachte, es %m+
sei nur eine Möglichkeit, Monate hinzuzufügen, und ähnliche lubridate
Befehle wie %y+%
usw. existieren nicht. Es stellt sich jedoch heraus, dass "m" nicht für "Monatsaddition" steht. Meine beste Vermutung ist "Magie" =)