Learn R Programming

mev (version 2.1)

xdep.xindex: Extremal index estimators

Description

The function implements estimators of the extremal index based on interexceedance time and gap of exceedances. The maximum likelihood estimator and iteratively reweighted least square estimators of Suveges (2007) as well as the intervals estimator. The implementation differs from the presentation of the paper in that an iteration limit is enforced to make sure the iterative procedure terminates. Multiple thresholds can be supplied.

Usage

xdep.xindex(
  xdat,
  qlev = 0.95,
  estimator = c("wls", "mle", "intervals"),
  confint = c("none", "wald", "lrt"),
  level = 0.95,
  plot = FALSE,
  warn = FALSE,
  ...
)

Value

a data frame

  • qlev: quantile level of estimates

  • coef: point estimates

  • lower: lower bound of confidence interval

  • upper: lower bound of confidence interval

Arguments

xdat

numeric vector of observations

qlev

a vector of quantile levels in (0,1) for estimation of the extremal index. Defaults to 0.95

estimator

a string specifying the chosen method (only one allowed). Must be either wls for weighted least squares, mle for maximum likelihood estimation or intervals for the intervals estimator of Ferro and Segers (2003). Partial match is allowed.

confint

string indicating the type of confidence interval, one of "wald" or "lrt" for estimator="mle", else "none"

level

the confidence level required (default to 0.95).

plot

logical; if TRUE, plot the extremal index as a function of q

warn

logical; if TRUE, receive a warning when the sample size is too small

...

additional arguments, for backward compatibility

Author

Leo Belzile

Details

The iteratively reweighted least square is a procedure based on the gaps of exceedances \(S_n=T_n-1\) The model is first fitted to non-zero gaps, which are rescaled to have unit exponential scale. The slope between the theoretical quantiles and the normalized gap of exceedances is \(b=1/\theta\), with intercept \(a=\log(\theta)/\theta\). As such, the estimate of the extremal index is based on \(\hat{\theta}=\exp(\hat{a}/\hat{b})\). The weights are chosen in such a way as to reduce the influence of the smallest values. The estimator exploits the dual role of \(\theta\) as the parameter of the mean for the interexceedance time as well as the mixture proportion for the non-zero component.

The maximum likelihood is based on an independence likelihood for the rescaled gap of exceedances, namely \(\bar{F}(u_n)S(u_n)\). The score equation is equivalent to a quadratic equation in \(\theta\) and the maximum likelihood estimate is available in closed form. Its validity requires however condition \(D^{(2)}(u_n)\) to apply; this should be checked by the user beforehand.

A warning is emitted if the effective sample size is less than 50 observations.

References

Ferro and Segers (2003). Inference for clusters of extreme values, JRSS: Series B, 65(2), 545-556.

Suveges (2007) Likelihood estimation of the extremal index. Extremes, 10(1), 41-55.

Suveges and Davison (2010), Model misspecification in peaks over threshold analysis. Annals of Applied Statistics, 4(1), 203-221.

Fukutome, Liniger and Suveges (2015), Automatic threshold and run parameter selection: a climatology for extreme hourly precipitation in Switzerland. Theoretical and Applied Climatology, 120(3), 403-416.

Examples

Run this code
set.seed(234)
# Moving maxima model with theta=0.5
a <- 1; theta <-  1/(1+a)
sim <- rgev(10001, loc=1/(1+a),scale=1/(1+a),shape=1)
x <- pmax(sim[-length(sim)]*a,sim[-1])
q <- seq(0.9, 0.99, by = 0.01)
xdep.xindex(
  xdat = x,
  qlev = q,
  estimator = "mle",
  confint = "wald")

Run the code above in your browser using DataLab