来自 posixct 的当地日
Local Day from posixct
我一直在处理夏威夷工作场所记录的一些数据,使用的是 UTC 时间而不是当地时间。因为夏威夷有一个很大的 UTC 偏移量 (UTC-10:00),这意味着 UTC 午夜将发生在办公日的中间,因此本地化我的日期很重要。
不幸的是,as.Date()
使用 UTC 日期而不是夏威夷日期,如下所示:
example_time <- as.POSIXct("8/1/14 0:05", tz = "UTC", format = "%m/%d/%y %H:%M")
example_time
# [1] "2014-08-01 00:05:00 UTC"
attributes(example_time)$tzone <- "Pacific/Honolulu"
example_time
# [1] "2014-07-31 14:05:00 HST"
as.Date(example_time)
# [1] "2014-08-01"
weekdays(example_time)
# [1] "Thursday"
weekdays(as.Date("2014-08-01"))
# [1] "Friday"
如果我使用 dplyr
来总结每天不同时间的一些观察结果,然后将此总结绘制在图表上,我应该使用什么来代替这些日期对象?如果我可以 dplyr::group_by()
的话,最好的解决方案是一个效果很好的解决方案,特别是因为日期在 ggplot
图表上看起来也不错?
as.Date
有一个 tz
选项,你试过了吗?
as.Date(example_time)
## [1] "2014-08-01"
as.Date(example_time, tz='Pacific/Honolulu')
## [1] "2014-07-31"
我一直在处理夏威夷工作场所记录的一些数据,使用的是 UTC 时间而不是当地时间。因为夏威夷有一个很大的 UTC 偏移量 (UTC-10:00),这意味着 UTC 午夜将发生在办公日的中间,因此本地化我的日期很重要。
不幸的是,as.Date()
使用 UTC 日期而不是夏威夷日期,如下所示:
example_time <- as.POSIXct("8/1/14 0:05", tz = "UTC", format = "%m/%d/%y %H:%M")
example_time
# [1] "2014-08-01 00:05:00 UTC"
attributes(example_time)$tzone <- "Pacific/Honolulu"
example_time
# [1] "2014-07-31 14:05:00 HST"
as.Date(example_time)
# [1] "2014-08-01"
weekdays(example_time)
# [1] "Thursday"
weekdays(as.Date("2014-08-01"))
# [1] "Friday"
如果我使用 dplyr
来总结每天不同时间的一些观察结果,然后将此总结绘制在图表上,我应该使用什么来代替这些日期对象?如果我可以 dplyr::group_by()
的话,最好的解决方案是一个效果很好的解决方案,特别是因为日期在 ggplot
图表上看起来也不错?
as.Date
有一个 tz
选项,你试过了吗?
as.Date(example_time)
## [1] "2014-08-01"
as.Date(example_time, tz='Pacific/Honolulu')
## [1] "2014-07-31"