我正在与先知一起预测半小时英国的电价。我还有另外两个时间序列:天然气价格和初始国家需求反转。因此,在基于日期时间索引将所有数据集合并在一起之后,我使用天然气价格和初始国家需求作为回归量。
当我只使用气体作为回归量时,我会得到更好的预测结果。但是,如果我添加负载需求,模型会给出更差的结果。我有点困惑,因为两个回归量都是正相关的,并且对电价有影响。
此外,一个重要的细节是负荷需求与电力和天然气价格序列相比具有非常清晰的模式。因此,从预测图中,看起来预言家模型正在遵循更容易遵循的模式,在这种情况下是负载需求。无论如何,我可能在某个地方错了。
部分代码:
#Prophet:
model_P = Prophet(weekly_seasonality=True,yearly_seasonality=False, daily_seasonality=True)
model_P.add_seasonality(name="monthly", period=30.5, fourier_order=5)
model_P.add_regressor('Gas')
model_P.add_regressor('INDO')
model_P.fit(pd.DataFrame({'ds': train.index, 'y':train, 'Gas': train_gas, 'INDO': train_indo}))
def populate_indo_val(dt):
current_date=str(dt.date())
return df[current_date]['INDO'][0]
def populate_gas_val(dt):
current_date=str(dt.date())
return df[current_date]['Gas'][0]
future_dates = model_P.make_future_dataframe(periods=test.shape[0],freq='30T')
future_dates['INDO']=future_dates['ds'].apply(populate_indo_val)
future_dates['Gas']=future_dates['ds'].apply(populate_gas_val)
results_P = model_P.predict(future_dates)
forecast_P = results_P.set_index('ds').yhat
