我正在编写一些代码来确定一组财务和公共利益数据的格兰杰因果关系。我在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}},y
,z
和price
x不会导致格兰杰的假设。
如果我想测试vol
和x
作为格兰杰导致其他变量的变量,那么语法是什么?根据我在网上找到的documentation,我可以使用多个变量作为" causers"如果你愿意,但根据函数的code,我似乎无法弄清楚如何读取多个变量。
提前感谢您的帮助!
答案 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