【发布时间】:2019-06-27 12:35:49
【问题描述】:
我正在尝试将日期对象(通过 Shiny 从用户输入中获得)转换为 POSIXct 对象 - 我想了解为什么在获得的 POSIXct 对象中添加了一个小时,尽管两个对象都具有同一时区。
见下面的代码。我尝试在谷歌或 Stackoverflow 论坛上查找和回答,但没有成功。
> "2019-05-11" %>% as.Date(tz = "UTC") %>% as.POSIXct(tz = "UTC")
[1] "2019-05-11 01:00:00 BST"
> "2019-05-11" %>% as.Date(tz = "GMT") %>% as.POSIXct(tz = "GMT")
[1] "2019-05-11 01:00:00 BST"
我已经在控制台 (RStudio) 输入了上面的行。我本来希望 POSIXct 对象是
"2019-05-11 00:00:00 BST".
有人知道吗?我想通过从 POSIXct 对象中减去来避免操纵上面的结果,以防上面的问题与我的计算机(时钟)有关,并且可能不存在于我打算部署我的 Shiny 应用程序的计算机上。
我不是 R 或一般计算机方面的专家,如果没有太多行话,我将不胜感激。
【问题讨论】:
-
输出是你当地的时区,好像是“BST”,所以是GMT+1
-
您可以在代码前输入
Sys.setenv(TZ="UTC")以获得预期结果 -
谢谢,整理好了!感谢您的及时帮助!
-
好的,然后我将其作为答案发布
标签: r