strptime返回NA

时间:2016-05-26 01:14:29

标签: r strptime

我在R中使用strptime为我的日期字符串获取NA值 我查看了各种答案,但没有奏效。 这是我的代码

startDate=strptime("Wed May 25 01:51:32 UTC 2016", format="%a %B %d %H:%m:%S %Z %Y", tz="UTC")
print(startDate)

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:5)

"%H:%m:%S"应为"%H:%M:%S"。更改后,您会收到错误,因为%Z对输入无效。

如果所有日期时间字符串都有UTC时区,则可以使用:

R> strptime("Wed May 25 01:51:32 UTC 2016", "%a %B %d %H:%M:%S UTC %Y", "UTC")
[1] "2016-05-25 01:51:32 UTC"

如果没有,那么您可以提取年份并将其添加到字符串中,因为strptime将忽略格式字符串指定的所有字符。

R> dts <- "Wed May 25 01:51:32 UTC 2016"
R> dtf <- "%Y %a %B %d %H:%M:%S"
R> strptime(paste(substring(dts, nchar(dts)-3), dts), dtf, "UTC")
[1] "2016-05-25 01:51:32 UTC"