从字符到posixct

时间:2018-02-16 15:11:10

标签: r date posixct

我有这个字符类型向量,包含一年和一个月。我想将它转换为日期类型,但是当我尝试使用POSIXct函数执行此操作时,我收到错误:

 Error in as.POSIXlt.character(x, tz, ...) : 
   character string is not in a standard unambiguous format

我似乎无法弄清楚为什么它不起作用。任何人吗?

 old <- as.character("201702")

 library(lubridate)
 new <- as.POSIXct(date, origin = "201501")

1 个答案:

答案 0 :(得分:2)

您只需要先使用适当的格式转换为日期:

as.POSIXct(as.Date("201702", format = "%Y%m"))

您还可以假设您想要本月的第1天?

as.POSIXct(as.Date(paste0("201702", "01"), format = "%Y%m%d"))

小心POSIX日期,因为它们也包含时间,因此您指定的时区也可以在您获得的日期起作用。