从字符到 R 中的日期

From character to date in R

我已经阅读了很多这样的问题,但我想我在这里面对的是不同的字符向量,所以 none 的答案解决了我的问题。

我有一个像下面这样的字符向量

"Fri Sep 18 17:01:33 +0000 2015"

我想转换成日期向量,例如

2015-09-18 17:01:33

然后我就可以用这些画图了。

如果有帮助,此数据来自 Twitter API 使用 streamR 包。

谢谢。

编辑:由于我的系统语言是巴西葡萄牙语,我同事的所有努力都只在我的电脑上导致了 NA。在此处找到解决问题的方法:

strptime, as.POSIXct and as.Date return unexpected NA

您不需要消除 +0000,它是从 UTC 开始的以分钟表示的偏移量,有时(不是这个是 0000)它可能非常有用并将数据转换为正确的方法。

这是一个工作示例 strptime:

x <- "Fri Sep 18 17:01:33 +0000 2015"
strptime(x, "%a %b %d %H:%M:%S %z %Y", tz = "UTC")
[1] "2015-09-18 17:01:33 UTC"

你做错了gsub。您应该转义 + 符号,以便您的模式为 '\+0000'。 合并:

    > x <- "Fri Sep 18 17:01:33 +0000 2015"
    > gsub('\+0000', '', x)
    [1] "Fri Sep 18 17:01:33  2015"
    > x <- gsub('\+0000', '', x)
    > strptime(x, format = '%a %b %d %H:%M:%S  %Y')
    [1] "2015-09-18 17:01:33 PDT"

应该可以了。