evfit: Fit an extreme value distribution to observations

evfitR Documentation

Fit an extreme value distribution to observations

Description

Fits an extreme value distribution using L-moments to the values provided. In the presence of zero flow observations a mixed distribution is fitted.

Usage

evfit(x, distribution, zeta = NULL, check = TRUE,
      extreme = c("minimum", "maximum"))

Arguments

x

numeric vector. Data which is an extreme value distribution is fitted to.

distribution

A character vector of distributions to fit. Basically all distributions provided by Hosking's lmom-package and their reversed counterparts can be chosen. See reversing.

zeta

numeric vector of length one for manually setting a lower bound. Only a few distributions allow for a lower bound, namely 'gpa', 'ln3', 'wak' and 'wei'. The default value of NULL results in not bounding the distribution, therefore the parameter zeta is estimated.

check

logical, should check_distribution get called?

extreme

character vector of length one. Can be either 'minimum' or 'maximum'. Helps to choose a correct distribution.

Details

This function is vectorized over distribution.

According to paragraph 7.4.2 of the WNO manual, special care has to be taken in the presence of zero flow observations. A cdf called G(x) is fitted to the non-zero values of the original time series.

If a distribution is fitted which allows for finite lower bound (zeta), and zeta is estimated being negative, estimation is repeated constraining zeta = 0. If this behavior is not desired, the parameter zeta has to be set explicitly.

Value

An object of class 'evfit' containing the L-moments and the estimated parameters is returned. Objects of class 'evfit' are basically a list with the following elements:

values

the values x used for fitting.

freq.zeros

a character vector of length one. Frequency of zero flow observations.

is.censored

logical, if the censored time was used for fitting.

parameters

a list as long as distribution containing the estimated parameters for each distribution.

lmom

sample L-moments of the censored series (only containing non-zero values).

extreme

character vector of length one, indicating what kind of extreme value was fitted.

T_Years_Event

optional. If quantiles have been computed they a stored in a matrix with return periods in rows and distributions in columns.

See Also

There are methods for printing summarizing objects of class 'evfit'.

evfit

Examples

data("ngaruroro")
ng <- as.xts(ngaruroro)
minima <- as.vector(apply.yearly(ng$discharge, min, na.rm = TRUE))
evfit(x = minima, distribution = c("wei", "gevR"),
      extreme = "minimum")

lfstat documentation built on Nov. 10, 2022, 5:42 p.m.