如何将以下格式"12/31/2014 6:42:52 PM"
的本地DateTime转换为R中的UTC?我试过了as.POSIXct(as.Date("12/31/2014 6:42:52 PM", format="%m/%d/%Y %H:%M:%S"),tz="UTC")
但这似乎无效。
最佳答案
如果要将日期时间从当前时区更改为UTC,则需要
导入您本地的时区,然后将显示时区更改为“UTC”。例如:在澳大利亚的EST中,我是UTC + 10。
out <- as.POSIXct("12/31/2014 6:42:52 PM", format="%m/%d/%Y %H:%M:%S")
out
#"2014-12-31 06:42:52 EST"
#(Australian Eastern Standard Time)
as.numeric(out)
#[1] 1419972172
现在,出于显示目的更改时区:
attr(out, "tzone") <- "UTC"
out
#[1] "2014-12-30 20:42:52 UTC"
# display goes 10 hours backwards as I'm UTC+10
as.numeric(out)
#[1] 1419972172
请注意,这不会影响基础的数值数据(自1970-01-01起的秒数),它只会更改显示的内容。