我正在尝试从我的月度数据集中预测未来值(数据每年12次以每月第一天的方式总结),但遇到以下问题:
ValueWarning:提供了日期索引,但它没有与频率信息相关联,因此在进行预测时将被忽略。
我试图在Google和StackO上寻找相关主题和足够好的解决方案,但没有成功。
这是我的数据框的head(13)内容:
这是我的数据框的head(13)内容:
Occupancy rate Average Price RevPAR
Date
2013-01-01 0.579026 105.289497 60.965332
2013-02-01 0.637415 109.396682 69.731070
2013-03-01 0.714847 117.840534 84.237901
2013-04-01 0.716446 122.765139 87.954593
2013-05-01 0.771097 105.461387 81.320985
2013-06-01 0.768777 115.252163 88.603262
2013-07-01 0.677020 81.824781 55.396987
2013-08-01 0.673639 72.489988 48.832110
2013-09-01 0.783291 125.034417 97.938296
2013-10-01 0.779694 118.724648 92.568902
2013-11-01 0.771430 113.322446 87.420366
2013-12-01 0.680166 100.950857 68.663388
2014-01-01 0.573320 102.881633 58.984090
这是我试图运行的非常基础的拟合。
model = VAR(df)
results = model.fit(2)
results.forecast(df.values[-2:], 5)
results.summary()
我认为我需要为数据框设置某种频率属性。我尝试了使用df.asfreq('M')的暴力方法,但它只是搞乱了我的数据。
df.index.freq='M'
吗?但是这仅适用于连续时间序列中没有缺失值的情况。这是有关 Pandas 时间序列的详细信息。 https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html - Woods Chen