我对日期结束有疑问,我将在下面解释 这是我的示例数据:
DATE
2015-01-01
2015-02-05
2015-09-29
2016-02-07
2016-07-24
2016-12-16
我知道如果我想要那个月的总天数,代码是:
days_in_month(DATE)
但是,我想要的是:
DATE DATE_Month_End
2015-01-01 2015-01-31
2015-02-05 2015-02-28
2015-09-29 2015-09-30
2016-02-07 2016-02-29
2016-07-24 2016-07-31
2016-12-16 2016-12-31
任何建议?
答案 0 :(得分:8)
你可以这样做:
library(lubridate)
DATE$DATE_Month_End <- DATE$DATE
day(DATE$DATE_Month_End) <- days_in_month(DATE$DATE)
因为day() <-
允许您在保留年份和月份的同时更改日期。
答案 1 :(得分:2)
这样的东西?
library(lubridate)
data$DATE <- ymd(data$DATE)
data$DATE_Month_End <- paste(format(data$DATE, format="%y-%m"),"-", days_in_month(data$DATE), sep="")
DATE DATE_Month_End
1 2015-01-01 15-01-31
2 2015-02-05 15-02-28
3 2015-09-29 15-09-30
4 2016-02-07 16-02-29
5 2016-07-24 16-07-31
6 2016-12-16 16-12-31