我是R的新手,处理日期很糟糕.以下日期从查询返回到Twitter搜索API,并作为字符串存储在我的数据框中.
"星期五,2011年1月14日03:01:22 +0000"
如何将此转换为日期并将时区更改为东部标准时间?
我认为这可能是直截了当的,但我涉足strptime而无处可去.
任何帮助将不胜感激!
Ton*_*yal 11
这对我有用(我在英国):
> ( str <- "Fri, 14 Jan 2011 03:01:22 +0000" )
[1] "Fri, 14 Jan 2011 03:01:22 +0000"
> ( str <- strptime(str, "%a, %d %b %Y %H:%M:%S %z", tz = "GMT") )
[1] "2011-01-14 03:01:22 GMT"
> ( dt.gmt <- as.POSIXct(str, tz = "GMT") )
[1] "2011-01-14 03:01:22 GMT"
> format(dt.gmt, tz = "EST", usetz = TRUE)
[1] "2011-01-13 22:01:22 EST"
Run Code Online (Sandbox Code Playgroud)
日期/时间让我很困惑,所以我希望上面的内容适合你,即使你和格林尼治标准时间处于不同的时区,但我不能确定!
希望它至少有点帮助,Tony
来自help(strptime):
> Sys.setlocale("LC_TIME", "C")
[1] "C"
> strptime("Tue, 23 Mar 2010 14:36:38 -0400",
+ "%a, %d %b %Y %H:%M:%S %z",
+ tz="GMT")
[1] "2010-03-23 18:36:38 GMT"
Run Code Online (Sandbox Code Playgroud)
注意区域设置:如果不将其重置为C,则该函数将尝试将工作日和月份缩写解析为本地化.