ensembleBMA (version 5.1.5)

fitBMAnormal: BMA mixture of normals fit to a training set

Description

Fits a Bayesian Model Averaging mixture of normals to a given training set.

Usage

fitBMAnormal( ensembleData, control = controlBMAnormal(),
              exchangeable = NULL)

Arguments

ensembleData

An ensembleData object including ensemble forecasts and verification observations. Missing values (indicated by NA) are allowed. Dates are ignored if they are included. This is the training set for the model.

control

A list of control values for the fitting functions. The defaults are given by the function controlBMAnormal.

exchangeable

An optional numeric or character vector or factor indicating groups of ensemble members that are exchangeable (indistinguishable). The models have equal weights and parameters within each group. If supplied, this argument will override any specification of exchangeability in ensembleData.

Value

A list with the following output components:

biasCoefs

The fitted bias-correction coefficients.

sd

The fitted standard deviations for the mixture of normals model (equal or varying across components according to the equalVariance setting in the control input).

weights

The fitted BMA weights for the normal components for each ensemble member.

nIter

The number of EM iterations.

Details

This function fits a BMA model to a training data set. It is called by ensembleBMAnormal, which can produce a sequence of fits over a larger data set. Methods available for the output of fitBMAnormal include: cdf, quantileForecast, and modelParameters.

References

A. E. Raftery, T. Gneiting, F. Balabdaoui and M. Polakowski, Using Bayesian Model Averaging to calibrate forecast ensembles, Monthly Weather Review 133:1155--1174, 2005.

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 2010).

C. Fraley, A. E. Raftery, T. Gneiting, Calibrating Multi-Model Forecast Ensembles with Exchangeable and Missing Members using Bayesian Model Averaging, Monthly Weather Review 138:190--202, 2010.

See Also

ensembleData, controlBMAnormal, ensembleBMAnormal, cdf, quantileForecast, modelParameters

Examples

Run this code
# NOT RUN {
  data(ensBMAtest)

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

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

  tempTestData <- ensembleData( forecasts = ensBMAtest[,ens],
                                observations = ensBMAtest[,obs],
                                station = ensBMAtest[,"station"],
                                dates = ensBMAtest[,"vdate"],
                                forecastHour = 48,
                                initializationTime = "00")

  tempTrain <- trainingData( tempTestData, trainingDays = 30,
                             date  = "2008010100")

  tempTrainFit <- fitBMAnormal( tempTrain)

## equivalent to
##    tempTrainFit <- fitBMA( tempTrain, model = "normal")

# }

Run the code above in your browser using DataLab