我有一个从1960年到2015年的每日温度的时间序列,并想预测2016年。我的目标是使用一种简单的方法,同时仍然能够捕获一段时间内数据的趋势和季节性。(其实我只关心5-8月份的天气情况,但不确定是否可以只用过去几年5-8月份的数据来做一个令人信服的预测,所以我预测了一年)
我尝试了auto.arima,它建议的顺序是(2,0,1),但结果似乎相当糟糕(见图)来自arima的预测
此外,我尝试了HoltWinters平滑方法,得到了一个看似合理的结果。然而,我不知道这种方法是否适合预测温度。来自硬件的预测
发布于 2017-09-26 08:32:54
我也不愿在没有更多信息的情况下提供答案;但是,我建议对于没有大量时间序列预测经验的人来说,“auto.arima”包中的预测功能非常好。它有一个内置的优化功能,可以搜索最佳ARIMA阶(p,d,q)。下面是一些示例代码:
install.packages("forecast")
library(forecast)
set.seed(1234)
tsdatav <- (seq(1:300) + rnorm(300, 1000, 10))
myts <- ts(tsdatav, frequency = 365, start = c(2017, 6))
mytsfit <- auto.arima(myts)
mytsfit #to my example data, fit an ARIMA(5,1,0) with drift
mytsforecast <- forecast(mytsfit, 50, level = c(80, 95))
plot(mytsforecast)
请注意,在预测函数中,您可以设置要预测的周期数以及置信区间(除了点预测之外)。
杜克大学在https://people.duke.edu/~rnau/411arim.htm上有一个关于ARIMA预测的很好的网站
再说一次,这只是一个建议。有许多预测方法在给定问题细节的情况下比其他方法工作得更好。
https://stackoverflow.com/questions/46415437
复制相似问题