我可能做了一些愚蠢而没有看到的东西,但是:
> strptime("201101","%Y%m")
[1] NA
从帮助strptime:
%Y世纪
%m月份为十进制数(01-12)
我可能做了一些愚蠢而没有看到的东西,但是:
> strptime("201101","%Y%m")
[1] NA
从帮助strptime:
%Y世纪
%m月份为十进制数(01-12)
只需粘贴您忽略的日期字段(例如“01”):
R> shortdate <- "201101"
R> as.Date(paste(shortdate, "01", sep=""), "%Y%m%d")
[1] "2011-01-01"
R>
我更喜欢 as.Date()
对于日期和 strptime()
对于 POSIXct
对象,即日期和时间。
然后,您可以转换已解析的 Date
对象变成了 POSIXlt
检索年月的对象:
R> mydt <- as.Date(paste(shortdate, "01", sep=""), "%Y%m%d")
R> myp <- as.POSIXlt(mydt)
R> c(myp$year, myp$mon)
[1] 111 0
R>
这是标准的POSIX行为,年份为“年 - 1900”,月份为零索引。