Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
预测后如何保存xts时间序列数据中的日期 请考虑这个小数据集: library(xts) library(ggplot2) library(forecast) data <- data.frame(idDate = c("12-12-2012", "13-12-2012", "14-12-2012", "16-12-2012", "19-12-2012"), score= c(110, 120, 130, 200, 180)) date <- as.Date(as.character(data$idDate), "%d-%m-%Y") score <- as.numeric(data$score) myxts <- xts(score, date) autoplot(myxts) 库(xts) 图书馆(GG2) 图书馆(预测) 数据_R_Ggplot2_Time Series_Xts - Fatal编程技术网

预测后如何保存xts时间序列数据中的日期 请考虑这个小数据集: library(xts) library(ggplot2) library(forecast) data <- data.frame(idDate = c("12-12-2012", "13-12-2012", "14-12-2012", "16-12-2012", "19-12-2012"), score= c(110, 120, 130, 200, 180)) date <- as.Date(as.character(data$idDate), "%d-%m-%Y") score <- as.numeric(data$score) myxts <- xts(score, date) autoplot(myxts) 库(xts) 图书馆(GG2) 图书馆(预测) 数据

预测后如何保存xts时间序列数据中的日期 请考虑这个小数据集: library(xts) library(ggplot2) library(forecast) data <- data.frame(idDate = c("12-12-2012", "13-12-2012", "14-12-2012", "16-12-2012", "19-12-2012"), score= c(110, 120, 130, 200, 180)) date <- as.Date(as.character(data$idDate), "%d-%m-%Y") score <- as.numeric(data$score) myxts <- xts(score, date) autoplot(myxts) 库(xts) 图书馆(GG2) 图书馆(预测) 数据,r,ggplot2,time-series,xts,R,Ggplot2,Time Series,Xts,问题是您在两种不同的时间系统中工作:xts是不规则的(使用无需周期性的日期),而forecast/ts系统是规则的(使用等距数字序列)。我们通过创建可以映射到预测的未来日期序列来解决这个问题 这里有一个详细的解决方案。forecast和xts包用于重新创建预测。timekit包用于创建未来日期。ggplot2软件包用于打印 解决问题的关键是确定未来的日期。请注意,您拥有的是不规则的间隔tk\u make\u future\u timeseries()uses与输入时间索引的周期相匹配。如果这不正

问题是您在两种不同的时间系统中工作:
xts
是不规则的(使用无需周期性的日期),而
forecast
/
ts
系统是规则的(使用等距数字序列)。我们通过创建可以映射到预测的未来日期序列来解决这个问题

这里有一个详细的解决方案。
forecast
xts
包用于重新创建预测。
timekit
包用于创建未来日期。
ggplot2
软件包用于打印

解决问题的关键是确定未来的日期。请注意,您拥有的是不规则的间隔
tk\u make\u future\u timeseries()
uses与输入时间索引的周期相匹配。如果这不正确,您可以根据需要分别使用
跳过值
插入值
删除和插入日期


库(预测)
图书馆(xts)
图书馆(GG2)
图书馆(时间工具包)
#重新创建xts数据、d.arima和d.forecast

数据不清楚你想要实现什么。您是否希望
forecast
也告诉您它正在预测的日期?是的,我希望源数据和预测数据以日期格式沿x轴排列,而不是整数。Matt;这是一个非常有创意的解决方案。这就是我想要的。非常感谢。具有讽刺意味的是,我刚刚读到了timekit软件包。最初想使用ts()和auto.arima,但也无法保留日期列。使用您的方法是否有必要在此处使用xts()?实际上没有必要在timekit设置中使用
xts
。您可以直接从
tbl
(数据帧)转到
ts
,然后转到
auto.arima()
。此外,这是我一直遇到的一个一致性问题,因此我正在开发一个更直观的解决方案,该解决方案利用了timekit软件包(后面还有更多!)。
sweep
软件包正在开发中,但可以为您进行测试。渐晕图显示了如下工作流程:1)从基于日期的数据帧开始,2)使用
tk_ts()
,3)使用
auto.arima
或您喜欢的任何模型,4)使用
forecast
进行预测,5)使用
sw_sweep(timekit\u idx=TRUE)
以带日期的数据框形式返回预测<代码>开发工具::安装_github(“商业科学/sweep”)
我会查看它。我经常为不同的流域做鱼类预测,而且沿着x轴的日期更直观。谢谢分享。
d.arima <- auto.arima(myxts)
d.forecast <- forecast(d.arima, level = c(95), h = 3)
d.forecast
autoplot(d.forecast)