VAR {fable} | R Documentation |
Estimate a VAR model
Description
Searches through the vector of lag orders to find the best VAR model which has lowest AIC, AICc or BIC value. It is implemented using OLS per equation.
Usage
VAR(formula, ic = c("aicc", "aic", "bic"), ...)
Arguments
formula |
Model specification (see "Specials" section). |
ic |
The information criterion used in selecting the model. |
... |
Further arguments for arima |
Details
Exogenous regressors and common_xregs
can be specified in the model
formula.
Value
A model specification.
Specials
pdq
The AR
special is used to specify the lag order for the auto-regression.
AR(p = 0:5)
p | The order of the auto-regressive (AR) terms. If multiple values are provided, the one which minimises ic will be chosen. |
xreg
Exogenous regressors can be included in an VAR model without explicitly using the xreg()
special. Common exogenous regressor specials as specified in common_xregs
can also be used. These regressors are handled using stats::model.frame()
, and so interactions and other functionality behaves similarly to stats::lm()
.
The inclusion of a constant in the model follows the similar rules to stats::lm()
, where including 1
will add a constant and 0
or -1
will remove the constant. If left out, the inclusion of a constant will be determined by minimising ic
.
xreg(...)
... | Bare expressions for the exogenous regressors (such as log(x) )
|
See Also
Forecasting: Principles and Practices, Vector autoregressions (section 11.2)
Examples
lung_deaths <- cbind(mdeaths, fdeaths) %>%
as_tsibble(pivot_longer = FALSE)
fit <- lung_deaths %>%
model(VAR(vars(mdeaths, fdeaths) ~ AR(3)))
report(fit)
fit %>%
forecast() %>%
autoplot(lung_deaths)