VAR因果关系函数中的多个变量名

时间:2018-04-10 03:45:32

标签: r var causality

我正在编写一些代码来确定一组财务和公共利​​益数据的格兰杰因果关系。我在causality()包中的VAR函数的语法遇到了一些问题。这是代码示例及其潜在结果:

data = cbind(x, y, z, price, vol)
data_VAR = VAR(data, type="both", lag.max=30, ic="AIC")
causality(data_VAR, cause="x")$Granger

Granger causality H0: x do not Granger-cause y z price vol

data:  VAR object data_VAR
F-Test = 1.6696, df1 = 120, df2 = 185, p-value = 0.0008476

这将使我得出结果,而不是{x 1}},yzprice x不会导致格兰杰的假设。

如果我想测试volx作为格兰杰导致其他变量的变量,那么语法是什么?根据我在网上找到的documentation,我可以使用多个变量作为" causers"如果你愿意,但根据函数的code,我似乎无法弄清楚如何读取多个变量。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您需要将所有原因都放入矢量中。

> library(vars)
> data(Canada)
> var.2c <- VAR(Canada, p = 2, type = "const")
> causality(var.2c, cause = c("e", "prod"))$Granger

    Granger causality H0: e prod do not Granger-cause rw U

data:  VAR object var.2c
F-Test = 6.8545, df1 = 8, df2 = 292, p-value = 2.919e-08