lubridate中的有效时区包括:

34

快速谷歌搜索似乎没有给我任何答案。lubridate的tz选项中有哪些有效的时区?特别地,我正在寻找巴西利亚的时区。谢谢!

library(lubridate)
dts <- c("6-3-1995 12:01:01","29-3-1995 23:01:01","29-3-1995 20:01:01")
dmy_hms(dts)               # locale's tz default
dmy_hms(dts, tz = "chile") # Chilean time (has one time zone only)

9
OlsonNames()函数中进行搜索,例如:grep("Brazil", OlsonNames(), value=TRUE) - thelatemail
太棒了@thelatemail!这缩小了选项范围。我认为“巴西/东部”是正确的选择... - emagar
1个回答

47

通过在标准的base R包中搜索OlsonNames(),可以提供主机系统上所有有效时区的列表。例如:

grep("Brazil", OlsonNames(), value=TRUE)

...提供了巴西可能的四种结果。


1
我是巴西人,我觉得这个特别棘手...现在是晚上11:40,我在巴西/东部地区,当运行lubridate的now(tz =“Brazil/East”)时,它比实际时间提前了一小时,进入了下一天。"2021-02-15 00:41:27 -02" - Marcio Rodrigues
2
我认为这可能与夏令时有关,在巴西,女巫已经不存在了。 - Marcio Rodrigues
2
@MarcioRodrigues - 如果您知道您当前位置与GMT/UTC相差的小时数,您可以使用该时区而无需考虑任何夏令时调整。例如,尝试使用now(tz="Etc/GMT+3") - thelatemail
如果你只想使用系统时区显示它,你可以使用 tz = Sys.timezone() - Chris Middleton
整洁。我正在寻找这个。非常有帮助。 - Raghavan vmvs
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接