Last data update: 2014.03.03

R: EMOS model fit to a training set
fitMOSR Documentation

EMOS model fit to a training set

Description

Fits Ensemble Model Output Statistics to a given training set.

Usage

fitMOS(ensembleData, control = NULL, model = NULL,
       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 default is
controlMOSnormal() for Gaussian (normal) models.

model

A character string describing the EMOS model to be fit. Current choices are "normal", typically used for temperature or pressure data. For specific details on model fitting see fitMOSnormal

exchangeable

A numeric or character vector or factor indicating groups of ensemble members that are exchangeable (indistinguishable). The model fit will have equal weights and parameters within each group. The default determines exchangeability from ensembleData.

Value

A list with the following output components:

a

The fitted intercept.

B

The fitted EMOS coefficients.

c,d

The fitted variance parameters for each date, see details.

References

T. Gneiting, A. E. Raftery, A. H. Westveld and T. Goldman, Calibrated probabilistic forecasting using ensemble model output statistics and minimum CRPS estimation. Monthly Weather Review 133:1098–1118, 2005.

See Also

fitMOSnormal controlMOSnormal

Examples

  data(ensMOStest)

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

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

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

  tempTrainFit <- fitMOS( tempTrain, model = "normal")

## equivalent to
##    tempTrainFit <- fitMOSnormal( tempTrain)

Results