时间序列预测——错误的结果
Time series forecasting- wrong result
我之前没有做过任何时间序列预测,我尝试根据每小时的日期时间段来预测来自呼叫中心的总呼叫数据量。当我绘制预测时,数据绘制正确,但预测偏离了。
这是我使用的代码。和入门里的差不多。
df.rename(columns={'date':'ds','count':'y'},inplace=True)
df["ds"] = pd.to_datetime(df["ds"])
new_data=df[['ds','y']]
#input data to prophet model and forecast
model = Prophet()
model.fit(new_data)
future = model.make_future_dataframe(periods=15)
forecast = model.predict(future)
fig = model.plot(forecast, xlabel='ds', ylabel='y')
plt.title('forecasting')
plt.show()
数据正在使用中,
ds y
2021-10-01 13:00:00 2871
2021-10-01 14:00:00 2545
2021-10-01 15:00:00 2426
2021-10-01 16:00:00 2446
2021-10-01 17:00:00 299
想知道是不是我没把先知模型设计好,是代码还是数据格式有问题
您正在处理非每日数据,您不想以小时为粒度进行预测,但 make_future_dataframe
默认情况下预测每日数据,如您在 the prophet github.
中所见
在您的代码中使用 model.make_future_dataframe(periods=15*24, freq='H')
以获取接下来 15 天的每小时粒度图。
我之前没有做过任何时间序列预测,我尝试根据每小时的日期时间段来预测来自呼叫中心的总呼叫数据量。当我绘制预测时,数据绘制正确,但预测偏离了。
这是我使用的代码。和入门里的差不多。
df.rename(columns={'date':'ds','count':'y'},inplace=True)
df["ds"] = pd.to_datetime(df["ds"])
new_data=df[['ds','y']]
#input data to prophet model and forecast
model = Prophet()
model.fit(new_data)
future = model.make_future_dataframe(periods=15)
forecast = model.predict(future)
fig = model.plot(forecast, xlabel='ds', ylabel='y')
plt.title('forecasting')
plt.show()
数据正在使用中,
ds y
2021-10-01 13:00:00 2871
2021-10-01 14:00:00 2545
2021-10-01 15:00:00 2426
2021-10-01 16:00:00 2446
2021-10-01 17:00:00 299
想知道是不是我没把先知模型设计好,是代码还是数据格式有问题
您正在处理非每日数据,您不想以小时为粒度进行预测,但 make_future_dataframe
默认情况下预测每日数据,如您在 the prophet github.
在您的代码中使用 model.make_future_dataframe(periods=15*24, freq='H')
以获取接下来 15 天的每小时粒度图。