统计模型中Holt Winters的水位和坡度

时间:2019-06-25 12:02:36

标签: python statsmodels holtwinters

我想在统计模型中使用Holt Winters的水平和斜率,因为对于每个时期,我都希望生成时滞(步长)大于1的预测。也就是说,对于每个期间,我想提前三个月生成预测。

我知道我可以做到:

demand = pd.DataFrame({'material': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
                   'quantity': [32118, 32129, 32648, 33115, 34214, 34449, 36282, 
                                36674, 38320, 40229, 41702, 42320, 42595, 42969, 
                                44462, 44365, 44652, 45169, 45388, 46499, 46497]})

model = models.Holt(demand['quantity'], damped=True)
fit = model.fit(smoothing_level=0.1,
            smoothing_slope=0.2,
            damping_slope=0.9,
            optimized=False)

从fit角度,我可以进行fit.level和fit.slope。奇怪的是,使用这些值我无法生成预测。

我希望坡度和水准至少从在fit.params中找到的相同值开始。对于此示例,fit.params的初始斜率为9.9,初始水平为32118。不过,当我查看fit.level时,该水平的第一个值为32126.91,斜率的第一个值为9.7。

有什么想法如何提取fit.predict()使用的水平和斜率?

1 个答案:

答案 0 :(得分:1)

请参见https://github.com/statsmodels/statsmodels/pull/5893,在趋势减弱的情况下存在错误。