在时间序列预测中使用SimpleExpSmoothing时出错


from statsmodels.tsa.api import ExponentialSmoothing, SimpleExpSmoothing, Holt
fit1 = SimpleExpSmoothing(train_df).fit(smoothing_level=0.2,optimized=False)
fcast1 = fit1.forecast(4).rename(r'$alpha=0.2$')
fcast1.plot(marker='o', color='blue', legend=True)
fit1.fittedvalues.plot(marker='o',  color='blue')

我的数据帧,train_df有两列,第一列是股票价值价格,第二列是序列号(如1,2,3…(

在这里,我试图使用指数平滑来预测股票的价值

这就是错误

NotImplementedError:仅支持一维数据

最好能给出一个数据示例。尽管如此,我还是自己创建了一个小数据示例。

from statsmodels.tsa.api import ExponentialSmoothing, SimpleExpSmoothing, Holt
import pandas as pd

如下所述创建DataFrame:

train_df = pd.DataFrame({'stock':[80,90,105,130,160,200], 'number':[1,2,3,4,5,6]})

然而,您需要输入库存的pd.Series

train_ps = pd.Series(train_df['stock'])

最后,您将train_ps放入您的模型中:

fit1 = SimpleExpSmoothing(train_ps).fit(smoothing_level=0.2,optimized=False)
fcast1 = fit1.forecast(4).rename(r'$alpha=0.2$')
fcast1.plot(marker='o', color='blue', legend=True)
fit1.fittedvalues.plot(marker='o',  color='blue')

相关内容

  • 没有找到相关文章

最新更新