首页 > 解决方案 > Statsmodels ARIMA、值警告、日期索引和相关频率信息

问题描述

我目前正在用 python 构建 ARIMA 模型,并且在查看错误代码时遇到了这个我不太明白的错误。我很好奇它是否会影响模型中的参数,如果有人能就这个问题提出建议,我会非常感激,可能会提出修复建议。

已提供日期索引,但它没有相关的频率信息,因此在预测时将被忽略。

https://i.stack.imgur.com/sNZjd.png

github中的错误文档中的代码如下:

date_index = isinstance(index, (DatetimeIndex, PeriodIndex))

    if date_index and not has_freq:
        warnings.warn('A date index has been provided, but it has no'
                      ' associated frequency information and so will be'
                      ' ignored when e.g. forecasting.', ValueWarning)

这是我的数据框。我将日期时间设置为我的数据框索引。

https://i.stack.imgur.com/rlkd0.png

为了清楚起见,代码仍然是可执行的,并且可以打印结果摘要。

标签: pythonpandasstatisticsstatsmodelsarima

解决方案


当您的日期索引没有与之关联的频率时,会显示此警告。您尚未提供与数据/时间索引关联的定义频率(如季度、每月等)。

此警告的意思是您不能按日期指定预测步骤,并且 forecast 和 get_forecast 方法的输出将没有关联的日期。原因是如果没有给定的频率,就无法确定每个预测应该分配到哪个日期。尝试指定如下时期:

df.index = pd.DatetimeIndex(df.index).to_period('M')

在此处阅读此页面以获取更多详细信息。 https://www.statsmodels.org/stable/examples/notebooks/generated/statespace_forecasting.html


推荐阅读