pit {isodistrreg} | R Documentation |
Probability integral transform (PIT)
Description
Computes the probability integral transform (PIT) of IDR or raw forecasts.
Usage
pit(predictions, y, randomize = TRUE, seed = NULL)
## S3 method for class 'idr'
pit(predictions, y, randomize = TRUE, seed = NULL)
## S3 method for class 'data.frame'
pit(predictions, y, randomize = TRUE, seed = NULL)
Arguments
predictions |
either an object of class |
y |
a numeric vector of obervations of the same length as the number of predictions. |
randomize |
PIT values should be randomized at discontinuity points of the
predictive CDF (e.g. at zero for precipitation forecasts). Set |
seed |
argument to |
Value
Vector of PIT values.
References
Gneiting, T., Balabdaoui, F. and Raftery, A. E. (2007), 'Probabilistic forecasts, calibration and sharpness', Journal of the Royal Statistical Society: Series B (Statistical Methodology) 69(2), 243-268.
See Also
Examples
data("rain")
require("graphics")
## Postprocess HRES forecast using data of 4 years
X <- rain[1:(4 * 365), "HRES", drop = FALSE]
y <- rain[1:(4 * 365), "obs"]
fit <- idr(y = y, X = X)
## Assess calibration of the postprocessed HRES forecast using data of next 4
## years and compare to calibration of the raw ensemble
data <- rain[(4 * 365 + 1):(8 * 365), "HRES", drop = FALSE]
obs <- rain[(4 * 365 + 1):(8 * 365), "obs"]
predictions <- predict(fit, data = data)
idrPit <- pit(predictions, obs, seed = 123)
rawData <- rain[(4 * 365 + 1):(8 * 365), c("HRES", "CTR", paste0("P", 1:50))]
rawPit <- pit(rawData, obs, seed = 123)
hist(idrPit, xlab = "Probability Integral Transform",
ylab = "Density", freq = FALSE, main = "Postprocessed HRES")
hist(rawPit, xlab = "Probability Integral Transform",
ylab = "Density", freq = FALSE, main = "Raw ensemble")