granger_causality: Granger causality test (multivariate).
Description
Granger test of predictive causality (between multivariate time series)
based on vector autoregression (VAR
) model.
Its output resembles the output of the vargranger
command in Stata (but here using an F test).
Usage
granger_causality(
varmodel,
var.y = NULL,
var.x = NULL,
test = c("F", "Chisq"),
file = NULL,
check.dropped = FALSE
)
Value
A data frame of results.
Arguments
- varmodel
VAR model fitted using the vars::VAR()
function.
- var.y, var.x
[Optional] Defaults to NULL
(all variables).
If specified, then perform tests for specific variables.
Values can be a single variable (e.g., "X"
),
a vector of variables (e.g., c("X1", "X2")
),
or a string containing regular expression (e.g., "X1|X2"
).
- test
F test and/or Wald \(\chi\)^2 test. Defaults to both: c("F", "Chisq")
.
- file
File name of MS Word (.doc
).
- check.dropped
Check dropped variables. Defaults to FALSE
.
Details
Granger causality test (based on VAR model) examines whether
the lagged values of a predictor (or predictors)
help to predict an outcome when controlling for
the lagged values of the outcome itself.
Granger causality does not necessarily constitute a true causal effect.
Examples
Run this code# R package "vars" should be installed
library(vars)
data(Canada)
VARselect(Canada)
vm = VAR(Canada, p=3)
model_summary(vm)
granger_causality(vm)
Run the code above in your browser using DataLab