使用时区将Date对象转换为POSIXct

时间:2016-08-16 13:09:42

标签: r date datetime

正如here和其他问题所述,将Date对象转换为POSIXct相当简单 - 使用来自?as.POSIXct的陷阱,将没有时间的日期视为午夜UTC。例如:

> Sys.timezone()
[1] "Europe/London"
> d <- as.Date("2016-06-01")
> as.POSIXct(d)
[1] "2016-06-01 01:00:00 BST"

我有两个问题:

1)为什么选择UTC?你当前时区的午夜不会更有意义,即2016-06-01 00:00:00 BST

2)是否有更优雅的方式来获得日期的实际午夜而不是以下内容:

as.POSIXct(as.character(d))

作为解释,我有一个函数,它将Date作为参数,然后查找在该日期或之后发生的所有日志事件。根据上面列出的标准行为,我错过了午夜到凌晨1点之间的所有事件,所以我不得不添加as.character演员表。

0 个答案:

没有答案