我有一個包含 2015 年到 2019 年(31/12/2019)5 年每日資料的檔案,我需要預測 2021 年的每日值;我使用 statsmodels.tsa.holtwinters.ExponentialSmoothing,直到現在我還能夠通過預測 2019 年和 2020 年來預測它。是否可以預測 2021 年而不預測 2020 年?
這是我在代碼方面的內容:
fit1 = ExponentialSmoothing(train[colval],seasonal_periods=730,trend=trend, seasonal=seasonal,).fit()
prediction_result = fit1.forecast(365)
用上面的代碼,預測也是在訓練資料集之后才開始的,正常嗎?
這就是我拆分資料的方式:2015-2018 訓練和 2019 測驗
uj5u.com熱心網友回復:
如果您在訓練時提供datetimeindex基于序列的ExponentialSmoothing頻率集,則可以使用 predict 函式來預測任何日期。AirPassengers 資料的頻率設定為 Month start。AirPassengers 中包含的資料是 1949 - 1960 年的資料。
詳情請參考以下示例:
import pandas as pd
df = pd.read_csv('AirPassengers.csv')
df['Month'] = pd.to_datetime(df['Month'])
df = df.set_index('Month')
from statsmodels.tsa.api import ExponentialSmoothing
es = ExponentialSmoothing(df).fit()
es.predict('2021-05-01', '2021-08-01')
您將獲得如下輸出:
| 0 | |
|---|---|
| 2021-05-01 00:00:00 | 431.792 |
| 2021-06-01 00:00:00 | 431.792 |
| 2021-07-01 00:00:00 | 431.792 |
| 2021-08-01 00:00:00 | 431.792 |
我希望這回答了你的問題。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/311548.html
上一篇:年齡和體重的K均值
下一篇:對julia中的匿名函式感到困惑
