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, tsy <- 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