我的最终用户想要一个Excel工作簿,其中包括YYYY Qx的时间序列索引,例如1998年第一季度,但无论我如何导出我的季度时间序列tsibble到excel,索引列最终总是一个数字-我认为这个数字代表从1970年1月1日开始的天数。我想找到一种方法来做到这一点。
我查看了Rob Hyndman在https://robjhyndman.com/hyndsight/ts2csv/上的函数,将一个tsibble写入csv,这很好用(不确定Rob是否还在检查他的页面--但不会,我在这里要求避免重复)。下面是写到csv,它工作得很好,索引具有“1998 Q1”风格的格式。
library(fpp2)
readr::write_csv(tsibble::as_tsibble(visnights), "visnights.csv")
但我找不到一种导出方式,在导出到excel时保留时间索引格式。如果我使用类似下面的代码,则索引列中的第一个数据元素是数字10227,而不是1998 Q1
library(writexl)
write_xlsx(tsibble::as_tsibble(visnights), path = "visnights.xlsx", col_names = TRUE)
另一个示例-使用pivot_longer = FALSE
library(tsibble)
library(writexl)
z <- ts(matrix(rnorm(300), 100, 3), start = c(1961, 1), frequency = 12)
exp <- as_tsibble(z, pivot_longer = FALSE)
write_xlsx(exp, path = "exp.xlsx", col_names = TRUE)
1条答案
按热度按时间64jmpszr1#
您可以将其转换为tibble(而不是tsibble),因为这允许您使用dplyr中的
mutate()
将索引列转换为字符:请注意,我在这里重命名了你的变量,因为创建与函数同名的变量是不好的做法。