[英]Convert Character Date format to R Date
我有像“Feb-20”这样的字符格式的数据。 我需要将其转换为 '2020-02-29' R 日期格式。 代码应该是通用的,可以转换任何月份并返回月份的最后一天。
repmonth <- 'Feb-20'
我们可以使用strptime
:
strptime('Feb-20',format="%b-%d", tz="UTC")
[1] "2020-02-20 UTC"
或者像@Neem Kamal 建议的那样使用lubridate
:
lubridate::ymd(paste0("2020-","Feb-20"))
编辑:
要返回该月的最后一天:
lubridate::ceiling_date(strptime('Feb-20',format="%b-%d", tz="UTC"),"month") -1
[1] "2020-02-29 23:59:59 UTC"
也适用于三月:
lubridate::ceiling_date(strptime('Mar-20',format="%b-%d", tz="UTC"),"month") -1
[1] "2020-03-31 23:59:59 UTC"
缺点:它也返回时间。
29是固定的吗? 您可以使用润滑 package:
lubridate::myd(paste0('Feb-20','-29'))
这里是 go,
library(lubridate)
repmonth <- 'Feb-20'
rollback(ymd(paste0("2020-",repmonth) ) + month(1), roll_to_first = F)
以上将给出您正在寻找的内容。 每月的最后一天,无论是否是闰年。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.