python做var模型_python中VAR模型的条件预测

我使用VAR模型来预测滞后2的多变量时间序列。我有三个特点,并希望预测几个时间戳向前。我并没有预测这三个特性,而是知道其中两个特性的值,只想预测一个特性。在

如果我想预测所有这三个特征,一个头部有5个时间戳,我可以这样做(这是一个玩具示例):import pandas as pd

from statsmodels.tsa.api import VAR

data=pd.DataFrame({'Date':['1959-06-01','1959-06-02','1959-06-03','1959-06-04']\

,'a':[1,2,3,5],'b':[2,3,5,8],'c':[3,4,7,11]})

data.set_index('Date', inplace=True)

model = VAR(data)

results = model.fit(2)

results.forecast(data.values[-2:], 5)

请注意,data是

^{pr2}$

天气预报告诉我array([[ 8.01388889, 12.90277778, 17.79166667],

[ 12.93113426, 20.67650463, 28.421875 ],

[ 20.73343461, 33.12405961, 45.51468461],

[ 33.22366195, 52.98948789, 72.75531383],

[ 53.15895736, 84.72805652, 116.29715569]])

假设我知道a的下5个值实际上应该是8,13,21,34,55,而{}的下5个值应该是13,21,34,55,89。有没有一种方法可以将它合并到statsmodels.tsa(或任何其他python包)中的模型中,从而只预测c的5个值?我知道R有这样一个选项,通过将“硬”条件合并到cpredict.VAR中,但我想知道这是否也可以在python中实现。在

上面是一个玩具的例子。实际上,我有几十个特性,但我仍然知道所有这些特性,并且只希望使用VAR模型预测其中的一个。在

你可能感兴趣的:(python做var模型)