Estimate an ARIMA model

ARIMA(formula, ic = c("aicc", "aic", "bic"), stepwise = TRUE,
  greedy = TRUE, approximation = NULL, order_constraint = p + q + P +
  Q <= 6, unitroot_spec = unitroot_options(), ...)

Arguments

formula

Model specification (see "Specials" section).

ic

The information criterion used in selecting the model.

stepwise

Should stepwise be used?

greedy

Should the stepwise search move to the next best option immediately?

approximation

Should CSS (conditional sum of squares) be used during model selection? The default (NULL) will use the approximation if there are more than 150 observations or if the seasonal period is greater than 12.

order_constraint

A logical predicate on the orders of p, d, q, P, D and Q to consider in the search.

unitroot_spec

A specification of unit root tests to use in the selection of d and D. See unitroot_options() for more details.

...

Further arguments for stats::arima()

Specials

pdq

The pdq special is used to specify non-seasonal components of the model.
pdq(p = 0:5, d = 0:2, q = 0:5,
    start.p = 2, start.q = 2)
p
The order of the non-seasonal auto-regressive (AR) terms. If multiple values are provided, the one which minimises
icwill be chosen.
d
The order of integration for non-seasonal differencing. If multiple values are provided, one of the values will be selected via repeated KPSS tests.
q
The order of the non-seasonal moving average (MA) terms. If multiple values are provided, the one which minimises
icwill be chosen.
start.p
If
stepwise = TRUE,
start.pprovides the initial value for
pfor the stepwise search procedure.
start.q
If
stepwise = TRUE,
start.qprovides the initial value for
qfor the stepwise search procedure.

PDQ

The PDQ special is used to specify seasonal components of the model.
PDQ(P = 0:2, D = 0:1, Q = 0:2, period = NULL,
    start.P = 1, start.Q = 1)
P
The order of the seasonal auto-regressive (SAR) terms. If multiple values are provided, the one which minimises
icwill be chosen.
D
The order of integration for seasonal differencing. If multiple values are provided, one of the values will be selected via repeated heuristic tests (based on strength of seasonality from an STL decomposition).
Q
The order of the seasonal moving average (SMA) terms. If multiple values are provided, the one which minimises
icwill be chosen.
period
The periodic nature of the seasonality. This can be either a number indicating the number of observations in each seasonal period, or text to indicate the duration of the seasonal window (for example, annual seasonality would be "1 year").
start.P
If
stepwise = TRUE,
start.Pprovides the initial value for
Pfor the stepwise search procedure.
start.Q
If
stepwise = TRUE,
start.Qprovides the initial value for
Qfor the stepwise search procedure.

xreg

Exogenous regressors can be included in an ARIMA 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))

Examples

# Manual ARIMA specification USAccDeaths %>% as_tsibble %>% model(arima = ARIMA(log(value) ~ pdq(0,1,1) + PDQ(0,1,1)))
#> # A mable: 1 x 1 #> arima #> <model> #> 1 <ARIMA(0,1,1)(0,1,1)[12]>
# Automatic ARIMA specification library(tsibble) library(dplyr)
#> #> Attaching package: ‘dplyr’
#> The following object is masked from ‘package:tsibble’: #> #> id
#> The following object is masked from ‘package:testthat’: #> #> matches
#> The following objects are masked from ‘package:stats’: #> #> filter, lag
#> The following objects are masked from ‘package:base’: #> #> intersect, setdiff, setequal, union
tsibbledata::global_economy %>% filter(Country == "Australia") %>% model(ARIMA(log(GDP) ~ Population))
#> Warning: NaNs produced
#> # A mable: 1 x 2 #> # Key: Country [1] #> Country `ARIMA(log(GDP) ~ Population)` #> <fct> <model> #> 1 Australia <LM w/ ARIMA(2,0,0) errors>