r语言 - 预测在xts对象上不生成未来预测点的日期



我有一个数据框架,其中一列表示我的每日观测值,日期列格式为"2014-10-01",使用as。日期函数。

我正在创建一个xts对象,执行以下操作:

xtsObject <- as.xts(vector$values, order.by = vector$dates)

然后将xtsObject传递给ets预测函数,并在结果对象上调用predict来预测接下来的三个时间步骤,如下所示:

fit <- ets(xtsObject)
pred <- predict(fit,3)

结果如下:

       Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
366              0     0     0     0     0
367              0     0     0     0     0
368              0     0     0     0     0

(传入的向量由全0组成,因此预测按预期工作)

我的问题是无论如何都要将这三个未来预测点与适当的日期联系起来吗?我的数据是每天的,所以不是"366","367","368",最好是看"10-01-2015","10-02-2015","10-03-2015",以了解这些预测点所属的日期。我尝试了zoo、xts和ts,它们都产生了类似的输出。想法吗?

使用输入zoo对象,然后将预测转换为数据帧,将该数据帧转换为使用适当转换的索引行名的zoo对象:

library(zoo)
# test input
set.seed(123)
z <- zoo(rnorm(25, 1:25), as.Date("2000-01-01") + 0:24)
e <- ets(z)
p <- predict(e, 3)
DF <- as.data.frame(p)
zoo(DF, as.Date(as.numeric(rownames(DF))))
给:

           Point Forecast    Lo 80    Hi 80    Lo 95    Hi 95
2000-01-26       25.15238 23.97099 26.33377 23.34559 26.95916
2000-01-27       26.07805 24.89666 27.25945 24.27127 27.88484
2000-01-28       27.00373 25.82234 28.18512 25.19695 28.81052

最新更新