An integer specifying an upper limit on the number of iterations
for fitting the BMA mixture via EM. The default is Inf,
which sets no upper limit on the number of iterations,
so that the convergence criterion based on eps is used.
tol
A numeric convergence tolerance. The EM fit for the mixture
model is terminated when the relative error in successive
objective values in the M-step falls below tol.
The default is sqrt(.Machine$double.eps),
which is approximately 1.e-8 on IEEE compliant machines.
equalVariance
A logical value indicating whether or not the variances for
the mixture components should to be equal.
The default is to constrain them to be equal.
biasCorrection
A character string describing the type of bias correction to be used.
"regression"
The bias correction term is formed by regression on the forecast values
(including an intercept).
"additive"
The mean of the difference between observations
and forecasts is used for bias correction.
"none"
No bias correction.
init
An optional list of initial values for standard deviations
and weights. The default is to start with all standard deviations
equal to 1, and with equal weights for each member of the ensemble.
Value
A list whose components are the input arguments and their assigned values.
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 Ensemble and Bayesian Model Averaging,
Technical Report No. 516R, Department of Statistics, University of
Washington, 2007 (revised 2010).
See Also
ensembleBMAnormal,
fitBMAnormal
Examples
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")
## Not run: # R check
tempTestFit1 <- ensembleBMAnormal(tempTestData, trainingDays = 30,
control = controlBMAnormal(maxIter = 100, biasCorrection = "additive"))
## End(Not run)
# for quick run only; use more training days for forecasting
tempTestFit1 <- ensembleBMAnormal(tempTestData[1:20,], trainingDays = 5,
control = controlBMAnormal(maxIter = 100, biasCorrection = "additive"))