mapa: Multiple Aggregation Prediction Algorithm (Wrapper)

View source: R/MAPA.R

mapaR Documentation

Multiple Aggregation Prediction Algorithm (Wrapper)

Description

Wrapper to estimate and produce MAPA in- and out-of-sample forecasts. Uses mapaest and mapafor.

Usage

mapa(y, ppy, fh=ppy, ifh=1, minimumAL=1, maximumAL=ppy, 
     comb=c("w.mean","w.median","mean","median","wght"), paral=c(0,1,2), 
     display=c(0,1), outplot=c(0,1), hybrid=c(TRUE,FALSE), model="ZZZ", 
     type=c("ets","es"), conf.lvl=NULL, xreg=NULL, pr.comp=0, ...)

Arguments

y

In sample observations of a time series (vector). If y == "paper" then it prints paper reference.

ppy

Periods in a season of the time series at the sampled frequency. If insample is a ts object then this is taken from its frequency, unless overriden.

fh

Forecast horizon. Default = ppy.

ifh

Lower aggregation level to use. Default = 1.

minimumAL

Lowest aggregation level to use. Default = 1.

maximumAL

Highest aggregation level to use. Default = ppy, maximumAL>1.

comb

Combination operator. This can be: "mean"; "median"; "wght" - where each aggregation level is weighted inversly to aggregation; "w.mean" - level and trend components are averaged, but seasonal and xreg follow the wght combination; "w.median" - as w.mean, but with median. It is suggested that for data with high sampling frequency to use one of the "w.mean" and "w.median".

paral

Use parallel processing. 0 = no; 1 = yes (requires initialised cluster); 2 = yes and initialise cluster. Default is 0.

display

Display calculation progress in console. 0 = no; 1 = yes. Default is 0.

outplot

Provide output plot. 0 = no; 1 = yes. Default is 1.

hybrid

Provide hybrid forecasts, as in Kourentzes et al. paper. If minimumAL > 1 then the minimumAL ETS forecasts are used. Default is TRUE.

model

Allow only that type of ETS at each aggregation level. This follows similar coding to the ets function. The first letter refers to the error type ("A", "M" or "Z"); the second letter refers to the trend type ("N","A","Ad","M","Md", "Z", "X" or "Y"); and the third letter refers to the season type ("N","A","M", "Z", "X" or "Y"). The letters mean: "N"=none, "A"=additive, "M"=multiplicative, "Z"=automatically selected, "X"=automatically select between none and additive and "Y"=automatically select between none and multiplicative. A "d" for trend implies damped. "X" and "Y" supported only by type=="es". If used with type=="ets" a warning will be given and they will default to "Z". By default model="ZZZ". If due to sample limitation ETS cannot be calculated at an aggregation level for the selected model, then no estimation is done for that specific level.

type

What type of exponential smoothing implementation to use. "es" = use from the smooth package; "ets" = use from the forecast package. Default is "es"

conf.lvl

Vector of confidence level for prediction intervals. Values must be (0,1). If conf.lvl == NULL then no intervals are calculated. For example to get the intervals for 80% and 95% use conf.lvl=c(0.8,0.95).

xreg

Vector or matrix of exogenous variables to be included in the MAPA. If matrix then rows are observations and columns are variables. Must be at least as long as in-sample. Additional observations are unused. Note that including xreg will force type="es".

pr.comp

MAPAx can use principal component analysis to preprocess xreg. When comp is -1 then the number of retained components is chosen automatically. When comp=0 then no pre-processing is performed and the original xreg is used. Any other value represents the number of principal components retained.

...

Pass additional arguments to es or ets.

Details

This function calls mapaest and mapafor internally.

Value

infor

In-sample forecasts.

outfor

Out-of-sample forecasts.

PI

Prediction intervals for given confidence levels.

MSE

In-sample MSE error.

MAE

In-sample MAE error.

Note

The calculation of the prediction intervals is based on the empirical multiple step ahead MSE. To speed up calculations set conf.lvl=NULL. If very long forecast horizons are requested then once no more t+h MSE can be calculated the following approximation is used: \sqrt{MSE_{t+1}}*\sqrt{h} for the error.

Author(s)

Nikolaos Kourentzes, nikolaos@kourentzes.com; Fotios Petropoulos.

References

  • Kourentzes N., Petropoulos F., Trapero J.R. (2014) Improving forecasting by estimating time series structural components across multiple frequencies. International Journal of Forecasting, 30(2), 291–302.

  • Kourentzes N., Petropoulos F. (2015) Forecasting with multivariate temporal aggregation: The case of promotional modelling. International Journal of Production Economics.

  • You can find more information about MAPA at Nikos' blog.

See Also

mapaest, mapafor, mapasimple.

Examples

out <- mapa(admissions)

MAPA documentation built on Nov. 16, 2023, 5:07 p.m.

Related to mapa in MAPA...