在R中将时间戳转换为日期时间格式

时间:2016-07-29 15:37:49

标签: r timestamp lubridate

我有一个数据集,其中的列具有自动生成的格式的时间戳。

head(tweets$V2)

[1] Fri Oct 30 18:33:50 +0000 2015 Fri Oct 30 18:33:51 +0000 2015 Fri Oct 30 18:33:52 +0000 2015
[4] Fri Oct 30 18:33:54 +0000 2015 Fri Oct 30 18:33:55 +0000 2015 Fri Oct 30 18:33:56 +0000 2015

我想将它们转换为POSIX类型的时间日期格式。有关如何解决这个问题的任何指示?

将这些转换为标准时间格式后,我想观察推文主题的趋势。

1 个答案:

答案 0 :(得分:0)

有关详细信息,请参阅?strptime

tweets$V2 <- as.POSIXct(strptime(tweets$V2, "%a %b %d %H:%M:%S %z %Y"))

这会将POSIXct格式的strigs转换为系统的默认时区。如果要指定其他时区,请包含tz参数。

a <- c("Fri Oct 30 18:33:50 +0000 2015")
as.POSIXct(strptime(a, "%a %b %d %H:%M:%S %z %Y"))
[1] "2015-10-30 14:33:50 EDT"

as.POSIXct(strptime(a, "%a %b %d %H:%M:%S %z %Y", tz = "GMT"))
[1] "2015-10-30 18:33:50 GMT"

注意:如果列为as.character

,则将列转换为factor