gpt4 book ai didi

r - 润滑错误 : ‘/etc/localtime’ is not a symlink

转载 作者:行者123 更新时间:2023-12-05 01:40:52 27 4
gpt4 key购买 nike

当我在 lubridate 中运行 now() 时出现此错误。

Warning: Your system is mis-configured: ‘/etc/localtime’ is not a symlink Warning: It is strongly recommended to set envionment variable TZ to ‘Etc/Universal’ (or equivalent)

然后我将当前时间调整为 UTC。

[1] "2019-04-14 15:50:18 UTC"

我在 SO 和 github 上四处寻找这个,但没有找到太多内容。我在 EC2 上的 Linux 机器上运行 RStudio Server。

这是 sessionInfo() 输出的顶部

R version 3.5.3 (2019-03-11)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Amazon Linux AMI 2018.03

我在 /usr/share/zoneinfo/ 中查找时区选项,并看到了与我的时区匹配的 Pacific。我运行了 Sys.setenv(TZ='Pacific'),但它仍然提供错误的时间。

[1] "2019-04-14 16:15:04 Pacific"
Warning message:
In with_tz(Sys.time(), tzone) : Unrecognized time zone ''

最佳答案

我们需要更多信息来帮助您——“在 Linux 机器上”并不是那么具体。

看看我们看到的有问题的功能

 R> lubridate::now
function (tzone = "")
with_tz(Sys.time(), tzone)
<bytecode: 0x55fd86dd68a8>
<environment: namespace:lubridate>
R>

所以 Sys.time() 的基本 R 调用加上一些特定于包的代码来到达时区。

现在,如何向 R 提供时区信息(有些特定于本地安装)标准化。因此出现错误消息。

我的另一个包(我的)曾经需要它,而 R(当时)做得还不够——所以请看

 R> gettz::gettz()
[1] "America/Chicago"
R>

R 从那以后改进并添加了一个非常相似的启发式(在其他可能的地方寻找),因此它更加健壮。所以请多做一些测试并判断 R 是否知道时区,即使 lubridate 不知道。

无论哪种情况,您都可以(应该?)设置它来帮助系统。

如果 R 找到它,为什么不直接使用基 R?

R> format(Sys.time(), "%F %T %Z")  
[1] "2019-04-14 11:06:54 CDT"
R>

关于r - 润滑错误 : ‘/etc/localtime’ is not a symlink,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55677214/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com