如何实现严格的积极预测?


15

我正在研究一个值严格为正的时间序列。使用包括AR,MA,ARMA等在内的各种模型,我找不到简单的方法来获得严格的积极预测。

我正在使用R进行预测,我所能找到的是带有以下描述的参数的Forecast.hts {hts} :

预测分级或分组时间序列,包hts

## S3 method for class 'gts':
forecast((object, h,
  method = c("comb", "bu", "mo", "tdgsf", "tdgsa", "tdfp", "all"),
  fmethod = c("ets", "rw", "arima"), level, positive = FALSE,
    xreg = NULL, newxreg = NULL, ...))

positive
    If TRUE, forecasts are forced to be strictly positive

http://www.inside-r.org/packages/cran/hts/docs/forecast.gts

对于非分层时间序列有什么建议吗?关于使用其他约束(例如最小值,最大值等)的概括又如何呢?

即使未在R中实现,也应感谢您对文章,模型或有用的常规变量转换的建议。


3
在这种情况下,最简单但并非总是正确的事情之一就是简单地预测变量的对数。
mpiktas 2013年

4
要部分回显@mpiktas,一种方法是在对数刻度上工作。在实践中,这通常会同时改善模型的几个方面。虽然预测间隔可以很好地转换,但是您必须注意均值预测(如果对数上的正态性合理,则可以得到对数正态平均值的估计值,如果样本量较大,则通常是合理的)。有时可以用于某些简单时间序列模型的替代方法是使用Gamma模型。
Glen_b-恢复莫妮卡

Answers:


13

使用forecastR 的包装,只需lambda=0在拟合模型时进行设置。例如:

fit <- auto.arima(x, lambda=0)
forecast(fit)

lambdalambdaλ=0lambda=0

有关更多讨论,请参见http://www.otexts.org/fpp/2/4


感谢Hyndman教授的帮助。我认为我应该认真重读该章!您认为在第2-4章中提及此内容是否有帮助?我认同!:-)我还有一些问题:可以将某种转换用于可能的最小值(或最大值)吗?我正在尝试使用基于日志的函数来执行此操作,但是最终得到的置信区间在数学上是否正确?
Ho1

1
请分别询问最小/最大问题。是的,逆变换后的预测间隔是正确的。
Rob Hyndman

1
@ Ho1在NELSON的管理预测中应用的时间序列分析; 霍顿日1973年pp162-165详细讨论见......有不同的意见
IrishStat

不幸的是,它没有像预期的那样工作,因为它改变了方法,并且没有在预测上产生很好的预期y变化,它只是围绕平均值形成了一条平线
Diego Duarte
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.