例如,如果我在 R 中有 POSIXct 日期
as.POSIXct("2023-10-11 00:02:00")
"2023-10-11 00:02:00 CEST"
如果将其传输到 Date,我会得到意外的输出
as.Date(as.POSIXct("2023-10-11 00:02:00"))
"2023-10-10"
不得不说我不知道为什么。
根据您的需要指定
tz
中的as.Date()
(时区),然后就可以开始了:
as.Date(as.POSIXct("2023-10-11 00:02:00"), tz = "Europe/Berlin")
[1] "2023-10-11"
帮助文件中的 as.Date() 有许多可选参数:
## S3 method for class 'POSIXct'
as.Date(x, tz = "UTC", ...)
在这里,时区 (tz) 参数可能是导致两个示例中出现差异的原因。
在第一种情况下:“2023-10-11 00:02:00 CEST”显示 CEST 时区的凌晨 2 点。
从上面的帮助文件中看到,as.Date 中默认的 tz 参数是 UTC。如果您指定欧洲中部时间 (CET),那么您的结果应该是相同的
as.Date(as.POSIXct("2023-10-11 00:02:00"),tz="CET")