是否有可能(在“vars”包中或者在其他R包中?)将非连续滞后包含在var模型中,即只是滞后1和3。
到目前为止,看起来当我在函数VAR
下设置p = 3时,它包括1和p之间的所有连续滞后(即1:3)。
答案 0 :(得分:3)
您可以使用vars包中的restrict
来估算受限制的VAR。此方法需要对模型进行两次估计:1)具有所有“连续滞后”的无限制模型和2)仅具有所需滞后的受限模型。就是这样,因为restrict
函数将类'varest'的对象作为输入。看看我的选择:
> library(vars)
> data(Canada) # some data
> model <- VAR(Canada[,1:2], p=3) # The unrestricted VAR
> #Bcoef(model) The restriction matrix have to have the same dimension as dim(Bcoef(model))
# Building the restriction matrix
> Restrict <- matrix(c(1,1,0,0,1,1,1,
1,1,0,0,1,1,1), nrow=2, byrow=TRUE)
# Re-estimating the VAR with only lags 1 and 3
> restrict(model, method = "man", resmat = Restrict)
VAR Estimation Results:
=======================
Estimated coefficients for equation e:
======================================
Call:
e = e.l1 + prod.l1 + e.l3 + prod.l3 + const
e.l1 prod.l1 e.l3 prod.l3 const
1.2029610 0.1885456 -0.2300286 -0.1299485 1.8382368
Estimated coefficients for equation prod:
=========================================
Call:
prod = e.l1 + prod.l1 + e.l3 + prod.l3 + const
e.l1 prod.l1 e.l3 prod.l3 const
0.05511963 1.13333804 -0.03338699 -0.18646375 1.22037293
有关此功能的详细信息,请参阅?restrict
。