先知模型评估

时间:2019-11-11 02:25:25

标签: python time-series forecasting forecast facebook-prophet

我正在运行这段代码。用先知预测多个时间序列,但不知道如何评估模型。预先感谢

y

数据的结构是这样的:

import pandas as pd
from fbprophet import Prophet
data = pd.read_csv(r'C:\Users\XXX.csv')
ids = data['id'].unique()
series = []
for id in ids:
   f = data[data['id'] == id]
   series.append(f)

def run_prophet(timeserie):
    model = Prophet(yearly_seasonality=False,daily_seasonality=False)
    model.fit(timeserie)
    forecast = model.make_future_dataframe(periods=90, include_history=False)
    forecast = model.predict(forecast)
    return forecast

results = list(map(lambda timeserie: run_prophet(timeserie), series))

results[0] 
results[1]

1 个答案:

答案 0 :(得分:0)

您可以从预测中获取“ yhat”,“ yhat_lower”,“ yhat_upper”:

def run_prophet(timeserie):
    model = Prophet(yearly_seasonality=False,daily_seasonality=False)
    model.fit(timeserie)
    forecast = model.make_future_dataframe(periods=90, include_history=False)
    forecast = model.predict(forecast)
    return forecast

results = run_prophet(timeserie)
print(results['yhat'])

您还可以可视化预测数据:

import matplotlib.pyplot as plt
model.plot(forecast)
fig = model.plot_components(forecast)
plt.show()