将来の日付を見つけるために、日数を追加したい日付があります。
たとえば、2001年1月1日から45日後の日付をどのように見つけることができますか?
+を使用
> as.Date("2001-01-01") + 45
[1] "2001-02-15"
あなたも使うことができます
library(lubridate)
dmy("1/1/2001") + days(45)
他の人が示した単純な加算に加えて、他の増分または減分を使用seq.Date
またはseq.POSIXt
検索することもできます(POSIXtバージョンは秒、分、時間などを実行します)。
> seq.Date( Sys.Date(), length=2, by='3 months' )[2]
[1] "2012-07-25"
使用するだけ
as.Date("2001-01-01") + 45
ベースRから、または多くの寄稿パッケージの1つにある日付機能。私のRcppBDTパッケージは、特定の月の「第3水曜日の日付」などのBoostDate_Timeの機能をラップします。
編集:そして@Andrieに頼まれて、ここにRcppBDTからもう少しあります(これは実際にはほとんどRcppモジュールのテストケースです)。
R> library(RcppBDT)
Loading required package: Rcpp
R>
R> str(bdt)
Reference class 'Rcpp_date' [package ".GlobalEnv"] with 0 fields
and 42 methods, of which 31 are possibly relevant:
addDays, finalize, fromDate, getDate, getDay, getDayOfWeek, getDayOfYear,
getEndOfBizWeek, getEndOfMonth, getFirstDayOfWeekAfter,
getFirstDayOfWeekInMonth, getFirstOfNextMonth, getIMMDate, getJulian,
getLastDayOfWeekBefore, getLastDayOfWeekInMonth, getLocalClock, getModJulian,
getMonth, getNthDayOfWeek, getUTC, getWeekNumber, getYear, initialize,
setEndOfBizWeek, setEndOfMonth, setFirstOfNextMonth, setFromLocalClock,
setFromUTC, setIMMDate, subtractDays
R> bdt$fromDate( as.Date("2001-01-01") )
R> bdt$addDays( 45 )
R> print(bdt)
[1] "2001-02-15"
R>