car*_*erg 5 python time-series forecasting statsmodels
我正在尝试使用SARIMAX预测季节性时间序列。时间序列包含PV馈送的每日最大值,这导致假设为365天为周期。
这是我的代码:
mod= SARIMAX(realy.Max, order=(0,1,1), seasonal_order=(0,1,1,365))
results_SARIMAX = mod.fit(disp= -1)
Run Code Online (Sandbox Code Playgroud)
seasonal_order由于周期性,我将设置为365。我还根据一些预先考虑分别设置了变量p,d,q,P,D,Q。我的问题是,执行代码后,将出现以下错误:
ValueError: maxlag should be < nobs
Run Code Online (Sandbox Code Playgroud)
当我将s的值从365降低到150时,它可以工作,但是结果不好,因为这根本不是我的季节性。问题是,maxlag或nobs在哪里定义,我可以相应地对其进行更改吗?
SARIMAX函数的文档字符串仅讲述季度或每月数据,而不是日常数据。是否有人在使用SARIMAX方面有经验,并且已经根据日值对时间序列进行了预测?我搜寻了互联网来解决问题,但是找不到任何有用的信息。
这里已经出现了类似的问题, 在SARIMAX中预测较小数据的销售时如何设置maxlag? 在这里 如何更改ARMAX.predict的maxlag?
但是我不了解如何克服这个问题,因为我没有任何外在的价值要提交。
我还基于ARIMA建立了一个模型,可以使用该模型进行适当的预测。由于我没有非季节性的时间序列,所以我认为使用SARIMAX获得更好的结果可能是个好主意。不幸的是,我无法处理此错误。
谢谢您的帮助!
您需要几年(完整的季节性周期)才能估计 SARIMAX 的季节性部分,请参阅https://github.com/statsmodels/statsmodels/issues/3529。
作为替代方案,您可以使用样条或傅立叶级数将季节性模式建模为exog。参见例如http://robjhyndman.com/hyndsight/longseasonality/
这是一个使用 patsy 公式为 OLS 和 ARMA 创建季节性样条的笔记本草稿。SARIMAX 将以同样的方式工作。https://gist.github.com/josef-pkt/1ea164439b239b228557
| 归档时间: |
|
| 查看次数: |
4337 次 |
| 最近记录: |