strptime 返回 NA

strptime returning NA

我在 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)

如有任何帮助,我们将不胜感激。

"%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"