使用as.date将chr转换为日期

时间:2018-02-20 13:43:07

标签: r time-series as.date

      "2008/3"  "2008/4"  "2008/5"  "2008/6"  "2008/7"  "2008/8"  "2008/9"  "2008/10"
  [9] "2008/11" "2008/12" "2009/1"  "2009/2"  "2009/3"  "2009/4"  "2009/5"  "2009/6" 
 [17] "2009/7"  "2009/8"  "2009/9"  "2009/10" "2009/11" "2009/12" 

我使用as.Date(data$Time,format='%Y/%m')并强制执行NAs。

2 个答案:

答案 0 :(得分:3)

试试这个

as.Date(paste(data$Time,1,sep="/"),format='%Y/%m/%d')

它应该正常工作

答案 1 :(得分:0)

正如@G所建议的那样。格洛腾迪克as.yearmon()完成了这项工作。尝试:

dates <- c("2008/3", "2008/4", "2008/5", "2008/6", "2008/7", "2008/8",
           "2008/9", "2008/10", "2008/11")
library(zoo)
as.yearmon(dates, "%Y/%m")
# [1] "mars 2008"  "avr. 2008"  "mai 2008"   "juin 2008"  "juil. 2008"
# [6] "août 2008"  "sept. 2008" "oct. 2008"  "nov. 2008"
# or
as.Date(as.yearmon(dates, "%Y/%m"))
# [1] "2008-03-01" "2008-04-01" "2008-05-01" "2008-06-01" "2008-07-01"
# [6] "2008-08-01" "2008-09-01" "2008-10-01" "2008-11-01"