簡體   English   中英

使用 Statsmodel 和 ARIMA model 進行預測但遇到問題

[英]Using Statsmodel and the ARIMA model to forecast but running into issues

我正在嘗試學習如何根據 Statsmodel 庫中的 ARIMA model 預測數據,但我一直遇到問題。 目前我只是試圖將我的預測與實際情況對齊以測試我的 model 但我無法讓 ARIMA model 結果合作

import statsmodels.api as sm

model = sm.tsa.arima.ARIMA(train, order=(4,1,2))
result = model.fit()

result.summary()

step = 10

fc, se, conf = result.forecast(step)

這一切都有效,但最后一步是拋出此錯誤

 ValueError                                Traceback (most recent call last)
Input In [57], in <module>
      1 step = 10
----> 3 fc, se, conf = result.forecast(step)

ValueError: too many values to unpack (expected 3)

我已經閱讀了幾個小時的文檔,但我無法使用它。 任何幫助將不勝感激

首先,您嘗試保存 function 返回的內容,在這種情況下,您需要三個值。 一個用於fc ,一個用於se ,一個用於conf 問題是 function .forecast()將預測返回為單個 object。 您嘗試解壓縮單個 object,但 Python 需要三個。 因此,“太多的值無法解壓……”。 您可以在此處閱讀 function 的文檔以檢查它返回的內容:

https://www.statsmodels.org/dev/generated/statsmodels.tsa.arima.model.ARIMAResults.forecast.html#statsmodels.tsa.arima.model.ARIMAResults.forecast

在此處輸入圖像描述

https://www.statsmodels.org/dev/generated/statsmodels.tsa.arima.model.ARIMAResults.html

如果你嘗試這個,它會將 object “preds”中的所有預測保存為 pandas 系列:

preds = result.forecast(step)

其次,如果你想知道 function 返回什么,你可以只寫 function (不帶 ... = function())作為單元格的最后一行,然后你可以看到 ZC1C425268E68384F145A 返回什么。 或者您可以查看文檔。 你可以用print(type(result))打印對象的類型,它會返回“statsmodels.tsa.arima.model.ARIMAResultsWrapper”,如果你用谷歌搜索,你會得到上面的文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM