This is a wrapper function to obtain PWM or MLE estimates for the extended GP models of Naveau et al. (2016) for rainfall intensities. The function calculates confidence intervals by means of nonparametric percentile bootstrap and returns histograms and QQ plots of the fitted distributions. The function handles both censoring and rounding.
fit.extgp(
data,
model = 1,
method = c("mle", "pwm"),
init,
censoring = c(0, Inf),
rounded = 0,
confint = FALSE,
R = 1000,
ncpus = 1,
plots = TRUE
)
data vector.
integer ranging from 0 to 4 indicating the model to select (see extgp
).
string; either 'mle'
for maximum likelihood, or 'pwm'
for probability weighted moments, or both.
vector of initial values, comprising of \(p\), \(\kappa\), \(\delta\), \(\sigma\), \(\xi\) (in that order) for the optimization. All parameters may not appear depending on model
.
numeric vector of length 2 containing the lower and upper bound for censoring; censoring=c(0,Inf)
is equivalent to no censoring.
numeric giving the instrumental precision (and rounding of the data), with default of 0.
logical; should confidence interval be returned (percentile bootstrap).
integer; number of bootstrap replications.
integer; number of CPUs for parallel calculations (default: 1).
logical; whether to produce histogram and density plots.
Raphael Huser and Philippe Naveau
The different models include the following transformations:
model
0 corresponds to uniform carrier, \(G(u)=u\).
model
1 corresponds to a three parameters family, with carrier \(G(u)=u^\kappa\).
model
2 corresponds to a three parameters family, with carrier \(G(u)=1-V_\delta((1-u)^\delta)\).
model
3 corresponds to a four parameters family, with carrier $$G(u)=1-V_\delta((1-u)^\delta))^{\kappa/2}$$.
model
4 corresponds to a five parameter model (a mixture of type
2, with \(G(u)=pu^\kappa + (1-p)*u^\delta\)
Naveau, P., R. Huser, P. Ribereau, and A. Hannart (2016), Modeling jointly low, moderate, and heavy rainfall intensities without a threshold selection, Water Resour. Res., 52, 2753-2769, doi:10.1002/2015WR018552
.
egp.fit
, egp
, extgp
if (FALSE) {
data(rain, package = "ismev")
fit.extgp(rain[rain>0], model=1, method = 'mle', init = c(0.9, gp.fit(rain, 0)$est),
rounded = 0.1, confint = TRUE, R = 20)
}
Run the code above in your browser using DataLab