【问题标题】:Difference between pyramid and statsmodels fit() and ARIMA()?金字塔和statsmodels fit()和ARIMA()之间的区别?
【发布时间】:2018-07-26 17:57:33
【问题描述】:
我目前正在将 ARIMA 与金字塔一起使用,当使用金字塔的 ARIMA() 创建 ARIMA 对象时,我可以指定外生参数,但在调用 fit() 时,我无法指定外生变量。
但是,使用 statsmodels,我发现情况正好相反。我不能用 ARIMA() 指定一个外生参数,但我可以用 fit() 指定一个。
如果我想为 ARIMA() 和 fit() 都包含一个外生参数,我应该使用哪一个?
【问题讨论】:
标签:
python
data-science
statsmodels
pyramid-arima
【解决方案1】:
statsmodels 的ARIMA 类和金字塔的(recently renamed 到 pmdarima)有几个区别:
- 首先,statsmodels 的
ARIMA 类没有季节性成分。 pmdarima 的 ARIMA 类允许选择性地选择季节性。它是 statsmodels ARMA、ARIMA 和 SARIMAX 的一体化包装器
- Statsmodels 在构造函数中获取数据,但
pmdarima 更多地遵循 scikit-learn 签名,它仅接受签名中的模型超参数和 fit 调用中的数据。
请务必注意,当您将exogenous 传递给pmdarima 的fit 调用时,它在内部将外部数组传递给底层ARIMA 类。
tl;博士
当您使用 pmdarima 时,它在后台使用 statsmodels。只需将数据传递给fit 方法即可。