未来警告:statsmodels.tsa.arima_model.ARMA和statsmodels.tsa.arima_model.ARIMA已经被弃用。

7 人关注

虽然使用ARMA来拟合模型。

from statsmodels.tsa.arima_model import ARMA

我在控制台中得到一个警告。

C:\Users\lfc\anaconda3\lib\site-packages\statsmodels\tsa\arima_model.py:472: FutureWarning: 
statsmodels.tsa.arima_model.ARMA and statsmodels.tsa.arima_model.ARIMA have been deprecated in favor of statsmodels.tsa.arima.model.ARIMA (note the . between arima and model) and statsmodels.tsa.SARIMAX. These will be removed after the 0.12 release.
statsmodels.tsa.arima.model.ARIMA makes use of the statespace framework and
is both well tested and maintained.
To silence this warning and continue using ARMA and ARIMA until they are
removed, use:
import warnings
warnings.filterwarnings('ignore', 'statsmodels.tsa.arima_model.ARMA',
                        FutureWarning)
warnings.filterwarnings('ignore', 'statsmodels.tsa.arima_model.ARIMA',
                        FutureWarning)
warnings.warn(ARIMA_DEPRECATION_WARN, FutureWarning)

我如何弃用警告?

1 个评论
如果你想让它们安静下来,你可以准确地运行警告中的代码。这些已经从未来的v0.13版本中移除。 你应该改用statsmodels.tsa.arima.model.ARIMA,这是未来的版本。
python
time-series
statsmodels
Light
Light
发布于 2021-05-19
4 个回答
VIKRAM NAYYAR
VIKRAM NAYYAR
发布于 2022-06-07
已采纳
0 人赞同

这个警告是由于ARIMA包 "statsmodels/tsa/arima_model "的删除而发生的。

取而代之的是,用以下方式导入statsmodel。

import statsmodels.api as sm

并拟合ARIMA模型为。

model = sm.tsa.arima.ARIMA(train_data, order=(1,1,2))
result = model.fit()
    
Ibrahim.H
Ibrahim.H
发布于 2022-06-07
0 人赞同

从今天起, statsmodels.tsa.arima_model.ARMA statsmodels.tsa.arima_model.ARIMA 已经 已被删除,转而使用 statsmodels.tsa.arima.model.ARIMA (没有 _ )和 statsmodels.tsa.SARIMAX

这是因为 statsmodels.tsa.arima.model.ARIMA 利用了 statespace 的框架,它们都经过了良好的测试和维护。 它还提供了替代的专门参数估计器。

如果你试图从 statsmodels.tsa.arima_model 中使用 ARMA ,你会得到 NotImplementedError 的信息错误。

使用 ARIMA 模型的快速修复方法可以是这样的。

from statsmodels.tsa.arima.model import ARIMA
model = ARIMA(dataFrame.columnName, order=(1,0,0))

你可以在这里找到更多的细节issue.

sm.tsa.arima.ARIMA plot_predict没有定义,我应该用什么?
@GoldenLion 对于ARIMA模型,你可以使用 your_model.predict(start = start_date, end = end_date) 然后 plot() 进行预测,使用 plot_forecast(value) 进行预测。
Light
Light
发布于 2022-06-07
0 人赞同

运行下面的代码来忽略ARIMA的警告

import warnings

warnings.filterwarnings("ignore")

Md. Mahmudur Rahman
Md. Mahmudur Rahman
发布于 2022-06-07
0 人赞同

而不是使用