0

我一直在使用 fbprophet 进行时间序列预测。我有以下数据框:

在此处输入图像描述

我尝试使用以下代码进行未来预测,并希望预测未来 30 年:

p_model = Prophet()

df_plot = df_grouped.copy()
df_plot = df_plot.reset_index()
total_vehicles = df_plot.groupby(['year'])['all_motor_vehicles_miles'].sum()
total_vehicles = total_vehicles.reset_index()
total_vehicles['total_miles'] = total_vehicles['all_motor_vehicles_miles'] * 365

total_vehicles[['y', 'ds']] = total_vehicles[['total_miles', 'year']]

p_model.fit(total_vehicles)
future = p_model.make_future_dataframe(periods=30, freq='Y')
forecast = p_model.predict(future)
forecast.head()

但是,在策划这一点时,先知预测的是过去而不是未来 2020 年到 2050 年的未来,我不知道为什么?

在此处输入图像描述

任何人都知道为什么会这样以及如何解决它?干杯

4

1 回答 1

0

问题在于我的日期不是正确的日期时间格式。简单地确保类型是正确的,然后将其放入先知中就可以得到正确的答案。

total_vehicles['year'] = pd.to_datetime(total_vehicles['year'], format='%Y')

在此处输入图像描述

于 2021-04-14T18:20:21.580 回答