auto.ces(data, models=c("none","simple","full"),
initial=c("backcasting","optimal"), ic=c("AICc","AIC","BIC"),
cfType=c("MSE","MAE","HAM","MLSTFE","MSTFE","MSEh"),
h=10, holdout=FALSE,
intervals=c("none","parametric","semiparametric","nonparametric"), level=0.95,
intermittent=c("none","auto","fixed","croston","tsb","sba"),
bounds=c("admissible","none"),
silent=c("none","all","graph","legend","output"),
xreg=NULL, xregDo=c("use","select"), initialX=NULL,
updateX=FALSE, persistenceX=NULL, transitionX=NULL, ...)
"optimal"
, meaning that the initial states are optimised, or "backcasting"
, meaning that the initials are produced using backcasting procedure.
cfType
can be: MSE
(Mean Squared Error), MAE
(Mean Absolute Error), HAM
(Half Absolute Moment), MLSTFE
- Mean Log Squared Trace Forecast Error, MSTFE
- Mean Squared Trace Forecast Error and MSEh
- optimisation using only h-steps ahead error. If cfType!="MSE"
, then likelihood and model selection is done based on equivalent MSE
. Model selection in this cases becomes not optimal. There are also available analytical approximations for multistep functions: aMSEh
, aMSTFE
and aMLSTFE
. These can be useful in cases of small samples.
TRUE
, the holdout sample of size h will be taken from the data. If FALSE
, no holdout is defined.
none
, aka n
- do not produce prediction intervals.
parametric
, p
- use state-space structure of ETS. In case of mixed models this is done using simulations, which may take longer time than for the pure additive and pure multiplicative models.
semiparametric
, sp
- intervals based on covariance matrix of 1 to h steps ahead errors and assumption of normal / log-normal distribution (depending on error type).
nonparametric
, np
- intervals based on values from a quantile regression on error matrix (see Taylor and Bunn, 1999). The model used in this process is e[j] = a j^b, where j=1,..,h.
The parameter also accepts TRUE
and FALSE
. Former means that parametric intervals are constructed, while latter is equivalent to none
.
none
, meaning that the data should be considered as non-intermittent; 2. fixed
, taking into account constant Bernoulli distribution of demand occurancies; 3. croston
, based on Croston, 1972 method with SBA correction; 4. tsb
, based on Teunter et al., 2011 method. 5. auto
- automatic selection of intermittency type based on information criteria. The first letter can be used instead. 6. "sba"
- Syntetos-Boylan Approximation for Croston's method (bias correction) discussed in Syntetos and Boylan, 2005.
silent="none"
, then nothing is silent, everything is printed out and drawn. silent="all"
means that nothing is produced or drawn (except for warnings). In case of silent="graph"
, no graph is produced. If silent="legend"
, then legend of the graph is skipped. And finally silent="output"
means that nothing is printed out in the console, but the graph is produced. silent
also accepts TRUE
and FALSE
. In this case silent=TRUE
is equivalent to silent="all"
, while silent=FALSE
is equivalent to silent="none"
. The parameter also accepts first letter of words ("n", "a", "g", "l", "o").
xreg
should have number of observations equal either to in-sample or to the whole series. If the number of observations in xreg
is equal to in-sample, then values for the holdout sample are produced using Naive.
"nothing"
means that all of the data should be used, whilie "select"
means that a selection using ic
should be done. "combine"
will be available at some point in future...
xreg
is NULL.
TRUE
, transition matrix for exogenous variables is estimated, introducing non-linear interractions between parameters. Prerequisite - non-NULL xreg
.
NULL
, then estimated. Prerequisite - non-NULL xreg
.
matrix(transition,nc,nc)
, where nc
is number of components in state vector. If NULL
, then estimated. Prerequisite - non-NULL xreg
.
FI=TRUE
will make the function produce Fisher Information matrix, which then can be used to calculated variances of parameters of the model.
ces, ets, forecast, ts
y <- ts(rnorm(100,10,3),frequency=12)
# CES with and without holdout
auto.ces(y,h=20,holdout=TRUE)
auto.ces(y,h=20,holdout=FALSE)
library("Mcomp")
## Not run: ------------------------------------
# y <- ts(c(M3$N0740$x,M3$N0740$xx),start=start(M3$N0740$x),frequency=frequency(M3$N0740$x))
# # Selection between "none" and "full" seasonalities
# auto.ces(y,h=8,holdout=TRUE,models=c("n","f"),intervals="p",level=0.8,ic="AIC")
## ---------------------------------------------
y <- ts(c(M3$N1683$x,M3$N1683$xx),start=start(M3$N1683$x),frequency=frequency(M3$N1683$x))
ourModel <- auto.ces(y,h=18,holdout=TRUE,intervals="sp")
summary(ourModel)
forecast(ourModel)
plot(forecast(ourModel))
Run the code above in your browser using DataLab