This function calls the vars::var function to calculate the VAR model and applies restrictions if needed. We set the intercept to 1 for restricted equations because calculations go wrong otherwise (this is a bug in the vars library).

run_var(endo_matrix, exo_matrix, lag)

Arguments

endo_matrix

A numeric matrix of endogenous data.

exo_matrix

Either NULL or a numeric matrix of exogenous data.

lag

A nonnegative integer specifying the lag length of the model. Specifying 0 for the lag results in calculating a lag 1 model with all lag-1 terms restricted.

Value

A varest object with the VAR estimation result.

Examples

endo_matrix <- matrix(rnorm(120), ncol = 2, nrow = 60, dimnames = list(NULL, c("rumination", "activity"))) autovarCore:::run_var(endo_matrix, NULL, 1)
#> #> VAR Estimation Results: #> ======================= #> #> Estimated coefficients for equation rumination: #> =============================================== #> Call: #> rumination = rumination.l1 + activity.l1 + const #> #> rumination.l1 activity.l1 const #> -0.31077381 -0.03156316 0.18260662 #> #> #> Estimated coefficients for equation activity: #> ============================================= #> Call: #> activity = rumination.l1 + activity.l1 + const #> #> rumination.l1 activity.l1 const #> -0.03727749 -0.06716218 -0.15458513 #> #>