0

我一直在运行一个 SVAR 模型,我想为其绘制单个变量的脉冲响应,我称之为 USW1。我一直在使用的代码是:

#Estimating Model

SVAR1<- VAR(VARR,p=1, season=NULL, exog= NULL, type="const")
SVARmod1<- SVAR(SVAR1, Amat = amat, Bmat= NULL, hessian= TRUE, estmethod = c("scoring","direct"))
SVARmod1

#Impulse Responses
imp1=irf(SVARmod1, impulse="USW2", response="USW2")
imp1
plot(imp1)

imp2=irf(SVARmod1, impulse="USW2", response="UKret")
imp2
plot(imp2)

imp3=irf(SVARmod1, impulse="USW2", response="Japanret")
imp3
plot(imp3)

imp4=irf(SVARmod1, impulse="USW2", response="Franceret")
imp4
plot(imp4)

imp5=irf(SVARmod1, impulse="USW2", response="Germanyret")
imp5
plot(imp5)

imp6=irf(SVARmod1, impulse="USW2", response="Italyret")
imp6
plot(imp6)

imp7=irf(SVARmod1, impulse="USW2", response="Canadaret")
imp7
plot(imp7)

我已经手动绘制了 7 个 IRF,我想将它们组合成一个图表。我该怎么做?如果我使用grid.arrange:

grid.arrange(imp1, imp2, imp3, imp4,imp5,imp6,imp7, top = 'US Wealth Impulse Responses')

我得到错误:

"Error in gList(list(irf = list(USW2 = c(1, 0.995284368490114, 0.990103033960897,  : 
  only 'grobs' allowed in "gList"

任何帮助将不胜感激

4

0 回答 0