Learn R Programming

ensembleBMA (version 5.1.8)

MAE: Mean Absolute Error

Description

Computes the mean absolute error (MAE) for ensemble forecasting models.

Usage

MAE( fit, ensembleData, dates=NULL, ...)

Value

A vector giving the MAE for the deterministic forecasts associated with the raw ensemble and for the ensemble forecasting model. This is the mean absolute difference of the raw ensemble medians and the observations, and the mean absolute difference of the median forecast and the observations (as in Sloughter et al. 2007). \ Note that Raftery et al. 2005 uses the mean absolute difference of the raw ensemble means and the observations, and the mean absolute difference of the BMA predictive mean and the observations.

Arguments

fit

A model fit to ensemble forecasting data.

ensembleData

An ensembleData object that includes ensemble forecasts, verification observations and possibly dates. Missing values (indicated by NA) are allowed. \ This need not be the data used for the model fit, although it must include the same ensemble members.

dates

The dates for which the CRPS and MAE will be computed. These dates must be consistent with fit and ensembleData. The default is to use all of the dates in fit.

...

Included for generic function compatibility.

Details

This method is generic, and can be applied to all ensemble forecasting models.
Note the model may have been applied to a power transformation of the data, but that information is included in the input fit, and the output is transformed appropriately.

References

C. Fraley, A. E. Raftery, T. Gneiting and J. M. Sloughter, ensembleBMA: An R Package for Probabilistic Forecasting using Ensembles and Bayesian Model Averaging, Technical Report No. 516R, Department of Statistics, University of Washington, 2007 (revised in 2010).

See Also

ensembleBMA

Examples

Run this code
  data(ensBMAtest)

  ensMemNames <- c("gfs","cmcg","eta","gasp","jma","ngps","tcwb","ukmo")

  obs <- paste("T2","obs", sep = ".")
  ens <- paste("T2", ensMemNames, sep = ".")

  tempTestData <- ensembleData( forecasts = ensBMAtest[,ens],
                                dates = ensBMAtest[,"vdate"],
                                observations = ensBMAtest[,obs],
                                station = ensBMAtest[,"station"],
                                forecastHour = 48,
                                initializationTime = "00")
if (FALSE)  # R check
  tempTestFit <- ensembleBMAnormal( tempTestData, trainingDays = 30)


  MAE( tempTestFit, tempTestData)

Run the code above in your browser using DataLab