在R中将本地日期时间转换为UTC

Sam*_*Sam 8 datetime r utc local

如何将以下格式的本地DateTime转换"12/31/2014 6:42:52 PM"为R中的UTC?我试过这个

as.POSIXct(as.Date("12/31/2014 6:42:52 PM", format="%m/%d/%Y %H:%M:%S"),tz="UTC")

但它似乎没有效果.

the*_*ail 18

如果要将日期时间从当前时区转换为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
Run Code Online (Sandbox Code Playgroud)

现在移动时区以用于显示目的:

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
Run Code Online (Sandbox Code Playgroud)

请注意,这不会影响基础数字数据(自1970-01-01以来的秒数),它只会更改显示的内容.