Learn R Programming

ftsa (version 6.4)

farforecast: Functional data forecasting through functional principal component autoregression

Description

The coefficients from the fitted object are forecasted using a multivariate time-series forecasting method. The forecast coefficients are then multiplied by the functional principal components to obtain a forecast curve.

Usage

farforecast(object, h = 10, var_type = "const", Dmax_value, Pmax_value,
	level = 80, PI = FALSE)

Value

point_fore

Point forecast

order_select

Selected VAR order and number of components

PI_lb

Lower bound of a prediction interval

PI_ub

Upper bound of a prediction interval

Arguments

object

An object of fds.

h

Forecast horizon.

var_type

Type of multivariate time series forecasting method; see VAR for details.

Dmax_value

Maximum number of components considered.

Pmax_value

Maximum order of VAR model considered.

level

Nominal coverage probability of prediction error bands.

PI

When PI = TRUE, a prediction interval will be given along with the point forecast.

Author

Han Lin Shang

Details

1. Decompose the smooth curves via a functional principal component analysis (FPCA).

2. Fit a multivariate time-series model to the principal component score matrix.

3. Forecast the principal component scores using the fitted multivariate time-series models. The order of VAR is selected optimally via an information criterion.

4. Multiply the forecast principal component scores by estimated principal components to obtain forecasts of \(f_{n+h}(x)\).

5. Prediction intervals are constructed by taking quantiles of the one-step-ahead forecast errors.

References

A. Aue, D. D. Norinho and S. Hormann (2015) "On the prediction of stationary functional time series", Journal of the American Statistical Association, 110(509), 378-392.

J. Klepsch, C. Kl\"uppelberg and T. Wei (2017) "Prediction of functional ARMA processes with an application to traffic data", Econometrics and Statistics, 1, 128-149.

See Also

forecast.ftsm, forecastfplsr

Examples

Run this code
sqrt_pm10 = sqrt(pm_10_GR$y)
multi_forecast_sqrt_pm10 = farforecast(object = fts(seq(0, 23.5, by = 0.5), sqrt_pm10),
	h = 1, Dmax_value = 5, Pmax_value = 3)

Run the code above in your browser using DataLab