CET/CEST 从 R 导出到 excel 时删除时移
CET/CEST time shift is dropped when exporting from R to excel
我 运行 使用 openxlsx 将时间序列从 R 导出到 Excel 时遇到夏令时问题,其中夏令时未保留在 excel 文件中。
数据框包含以 POSIXct 格式存储的时间,时区设置为“CET”。按照惯例,时间会在三月的第三个星期日向前移动一小时 02:00 以切换到夏令时 (CEST)。结果2019-03-3101:00:00CET后面跟着2019-03-3103:00:00CET,而2019-03-3102:00:00CET不存在
CET/CEST 开关在 R 中按预期工作,但不会保留在由此产生的 excel 文件中。例如,当 运行ning:
require(openxlsx)
CEST_test<-data.frame(date=c(as.POSIXct("2019-03-31 01:00:00", tz="CET"),as.POSIXct("2019-03-31 03:00:00", tz="CET")))
write.xlsx(CEST_test,"CEST_test.xlsx")
生成的 excel 文件忽略了到 CEST 的切换,导致第三行出现错误的非 CET 时间指示:
我已经在 macOS 和 Windows 10 系统上对此进行了测试,结果相同。
谁能告诉我我做错了什么?
这样试试:
require(openxlsx)
options("openxlsx.datetimeFormat" = "yyy-mm-dd hh:mm:ss %Z")
dd <- c("2019-03-31 01:00:00", "2019-03-31 03:00:00")
CEST_date <- as.POSIXlt(dd, tz = "CET")
CEST_date <- format(CEST_date, usetz = TRUE)
CEST_test <- as.data.frame(CEST_date)
write.xlsx(CEST_test,"CEST_test.xlsx")
我 运行 使用 openxlsx 将时间序列从 R 导出到 Excel 时遇到夏令时问题,其中夏令时未保留在 excel 文件中。
数据框包含以 POSIXct 格式存储的时间,时区设置为“CET”。按照惯例,时间会在三月的第三个星期日向前移动一小时 02:00 以切换到夏令时 (CEST)。结果2019-03-3101:00:00CET后面跟着2019-03-3103:00:00CET,而2019-03-3102:00:00CET不存在
CET/CEST 开关在 R 中按预期工作,但不会保留在由此产生的 excel 文件中。例如,当 运行ning:
require(openxlsx)
CEST_test<-data.frame(date=c(as.POSIXct("2019-03-31 01:00:00", tz="CET"),as.POSIXct("2019-03-31 03:00:00", tz="CET")))
write.xlsx(CEST_test,"CEST_test.xlsx")
生成的 excel 文件忽略了到 CEST 的切换,导致第三行出现错误的非 CET 时间指示:
我已经在 macOS 和 Windows 10 系统上对此进行了测试,结果相同。 谁能告诉我我做错了什么?
这样试试:
require(openxlsx)
options("openxlsx.datetimeFormat" = "yyy-mm-dd hh:mm:ss %Z")
dd <- c("2019-03-31 01:00:00", "2019-03-31 03:00:00")
CEST_date <- as.POSIXlt(dd, tz = "CET")
CEST_date <- format(CEST_date, usetz = TRUE)
CEST_test <- as.data.frame(CEST_date)
write.xlsx(CEST_test,"CEST_test.xlsx")