You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何调用ARIMA.fit()时出现TypeError:意外关键字参数‘disp’

问题

编写了如下ARIMA建模代码:

from statsmodels.tsa.arima_model import ARIMA

arima = ARIMA(trend, order=(0,0,2))
arima_fit = arima.fit(disp=0)
plt.plot(ts)
plt.plot(arima_fit.fittedvalues, color='Red')

运行后抛出如下错误:

TypeError                                 Traceback (most recent call last)
Cell In[42], line 4
      2 # fit model
      3 arima = ARIMA(trend, order=(0,0,2))
----> 4 arima_fit = arima.fit(disp=0)
      5 plt.plot(ts)
      6 plt.plot(arima_fit.fittedvalues, color='Red')

TypeError: ARIMA.fit() got an unexpected keyword argument 'disp'

已尝试更新安装所有必要Python库,但错误仍存在,求解决办法。

解决办法

  • 问题根源:statsmodels新版本中,ARIMA.fit()方法已移除disp参数,改用verbose参数控制拟合过程的日志输出。
  • 快速修复代码:将arima.fit(disp=0)替换为arima.fit(verbose=False),即可关闭日志输出,实现原代码的预期效果。修改后代码如下:
from statsmodels.tsa.arima_model import ARIMA

arima = ARIMA(trend, order=(0,0,2))
arima_fit = arima.fit(verbose=False)
plt.plot(ts)
plt.plot(arima_fit.fittedvalues, color='Red')
  • 长期优化方案:statsmodels 0.12.0及以上版本中,statsmodels.tsa.arima_model.ARIMA已被标记为过时(deprecated),官方推荐使用新版ARIMA类,导入路径为statsmodels.tsa.arima.model.ARIMA,新版类的fit方法同样使用verbose参数,迁移后代码示例:
from statsmodels.tsa.arima.model import ARIMA  # 注意导入路径变化

arima = ARIMA(trend, order=(0,0,2))
arima_fit = arima.fit(verbose=False)
plt.plot(ts)
plt.plot(arima_fit.fittedvalues, color='Red')

内容的提问来源于stack exchange,提问作者jvtriplesix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 19:22:34