闰年的数据操作

时间:2017-05-05 08:46:20

标签: r datetime data-manipulation leap-year

这是我的data

date1
2015-01-01
2015-02-28
2015-03-15
2016-01-20
2016-02-29
2016-03-01

我想创建一个新列nextyear。 (例如date1 = 2015-01-01,nextyear = 2016-01-01)
所以,我试试:

data[, nextyear := date1 + months(12)]

但是,我没有考虑闰年 (例如date1 = 2015-02-28,nextyear = 2016-02-29)
(例如date1 = 2016-02-29,nextyear = 2017-02-28)

我知道SAS有一个INTNX函数:

nextyear=intnx('YEAR', date1, 1, 'SAME');

我如何在R中做?

我知道lubridate

中有一个功能
ymd("2016-2-29") %m+% years(1)
[1] "2017-02-28"
ymd("2015-2-28") %m+% years(1)
[1] "2016-02-28"

当日期是闰年前一年(例如2015年)时,此功能不起作用 有什么建议吗?

0 个答案:

没有答案