时区警告不会消失

时间:2017-11-10 06:52:26

标签: r posixct

类似的问题被问到here,但仍未得到答复,请不要将其标记为重复。 问题是您指定时区的那一刻,例如TZ ="亚/加尔各答" - 或任何其他时区(我尝试了其他几个时间,所有人都发出相同的警告)。

as.POSIXct("2017-11-01 10:52", "%Y-%m-%d %H:%M", tz = "Asia/Kolkata")
Warning messages:
1: In strptime(x, format, tz = tz) :
  unknown timezone 'default/Asia/Kolkata'
2: In as.POSIXct.POSIXlt(as.POSIXlt(x, tz, ...), tz, ...) :
  unknown timezone 'default/Asia/Kolkata'
3: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'

我也尝试过使用lubridate包:

ymd(20171115,tz = "Asia/Kolkata")

# [1] "2017-11-15 IST"
Warning messages:
1: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
2: In as.POSIXct.POSIXlt(lt) : unknown timezone 'default/Asia/Kolkata'
3: In as.POSIXlt.POSIXct(ct) : unknown timezone 'default/Asia/Kolkata'
4: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
似乎这已经成为一种流行病。现在,即使采购干净的代码也会发出数十条警告 - 完全相同。

有50个或更多警告(使用警告()查看前50个

> warnings()

Warning messages:
1: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
2: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
3: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
4: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
5: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
6: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
7: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
8: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata'
9: In as.POSIXlt.POSIXct(x, tz) : unknown timezone 'default/Asia/Kolkata

这里发生了什么?

1 个答案:

答案 0 :(得分:3)

我遇到了一些问题,如果你在High Sierra上似乎是OS HS和R 3.4.2之间的错误,就像在这篇文章中所说https://github.com/stan-dev/rstan/issues/455按照说明进行操作(直到R 3.4 .3将最终发布)对我有用。我这样做:

Sys.setenv(TZ="Europe/Madrid")

现在我可以加载包而不会弹出任何消息。希望它有所帮助!

<强> 被修改

R 3.4.3已经发布,问题已解决。