字符向量的解析日期(“月 - 年”)

时间:2016-05-06 15:53:08

标签: r date lubridate

我正在尝试将向量tsl解析为日期类。

tsl <- c("Dec-2011", "Dec-2011", "Dec-2011", "Dec-2011", "Dec-2011", 
"Dec-2011")

我阅读了as.Date的文档,我认为as.Date(tsl, "%b-Y")应该完成这项工作,但它会返回NAs。

我也尝试了以下内容:

as.Date(tsl, "bbb-YYYY")
as.Date(tsl, "by")

然后我尝试使用lubridate,但这也不起作用:

library(lubridate)
parse_date_time(tsl, "%b-%y")

运行Sys.getlocale()会返回:

  

“LC_COLLATE = English_United Kingdom.1252; LC_CTYPE = English_United Kingdom.1252; LC_MONETARY = English_United Kingdom.1252; LC_NUMERIC = C; LC_TIME = English_United Kingdom.1252”

任何想法如何解决?

1 个答案:

答案 0 :(得分:1)

如果您可以使用年月日期,这是一个解决方案:

as.Date(gsub("^", "01-", tsl), format="%d-%b-%Y")

我在本月的第一天使用gsub添加了。