Наложение функций импульсной характеристики на один график
Я надеюсь, что есть кто-то, кто может помочь. Уже просматривал различные сообщения и пробовал другие пакеты. Прошу прощения, но безуспешно с моей стороны!
Вот где я застрял: я оцениваю две модели VAR (модель 1 и 2), используя VARsignR
пакет. Модели предоставляют функции импульсной характеристики, и у меня есть две отдельные функции импульсной характеристики для всех переменных. Теперь для переменной y8 (общей в обеих моделях) я хотел бы видеть (или накладывать) импульсные отклики от двух моделей (импульсные отклики y8 от irfs1 и irfs2) на одном графике, чтобы я мог сравнивать ответы за время. горизонт. На одном и том же графике мне нравится различать их, используя разные цвета, и (если возможно) хочу сохранить ту же графическую среду. Насколько я понимаю, я не могу использовать здесь тот же пакет. Итак, любопытно, может ли кто-нибудь помочь. Любая помощь, решение моей проблемы, любой совет будет оценен. Вот мой код и ссылка на файл данных
(https://www.filehosting.org/file/details/879707/mydf.csv):
library(VARsignR)
#model 1
mydf <- read.csv(file.choose())
df_m1 <- mydf[,c(13:16,8,1)]# selction of variable for model1
df_m1 <- ts(data=df_m1,start = 1959,end = c(2017,4),frequency = 4)
constr1 <- c(+6,-1,-2,-4,-3,-5)
v1 <- c("y13","y14","y15","y16","y8","y1")
model_1 <- uhlig.penalty(Y=df_m1, nlags=2, draws=2000, subdraws=2000,
nkeep=1000, KMIN=1, KMAX=6, constrained=constr1,
constant=TRUE, steps=20, penalty=100, crit=0.001)
irfs1 <- model_1$IRFS
irfs1 <- irfs1*(-1)
irfplot(irfdraws=irfs1, type="median", labels=v1, save=FALSE, bands=c(0.10, 0.90),
grid=TRUE, bw=FALSE)
# model2
df_m2 <- mydf[,c(8,12,5,6,3,4)]# selction of variable for model 2
df_m2 <- ts(data=df_m2,start = 1959,end = c(2017,4),frequency = 4)
v2 <- c("y8","y12","y5","y6", "y3","y4")
constr2 <- c(-5,-1,+2,-3,-4,-6)
model_2 <- uhlig.penalty(Y=df_m2, nlags=2, draws=2000, subdraws=2000,
nkeep=1000, KMIN=1, KMAX=6, constrained=constr2,
constant=TRUE, steps=20, penalty=100, crit=0.001)
irfs_2 <- model_2$IRFS
irfs_2 <- irfs_2*(-1)
irfplot(irfdraws=irfs_2, type="median", labels=v2, save=FALSE, bands=c(0.10, 0.90),
grid=TRUE, bw=FALSE)