在 R 中将本地日期时间转换为 UTC
convert local dateTime to UTC in R
如何在 R 中将以下格式 "12/31/2014 6:42:52 PM"
的本地 DateTime 转换为 UTC?我试过了
as.POSIXct(as.Date("12/31/2014 6:42:52 PM", format="%m/%d/%Y %H:%M:%S"),tz="UTC")
但似乎无效。
如果您想将日期时间从当前时区转换为 UTC,您需要
导入您当地的时区,然后将显示时区更改为 "UTC"。例如:在澳大利亚东部标准时间我是 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 年 1 月 1 日以来的秒数),它只会更改显示的内容。
如何在 R 中将以下格式 "12/31/2014 6:42:52 PM"
的本地 DateTime 转换为 UTC?我试过了
as.POSIXct(as.Date("12/31/2014 6:42:52 PM", format="%m/%d/%Y %H:%M:%S"),tz="UTC")
但似乎无效。
如果您想将日期时间从当前时区转换为 UTC,您需要 导入您当地的时区,然后将显示时区更改为 "UTC"。例如:在澳大利亚东部标准时间我是 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 年 1 月 1 日以来的秒数),它只会更改显示的内容。