The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

bgev

An R package for the bimodal GEV (Generalized Extreme Value) distribution: density, distribution, quantile, and random generation functions, plus maximum likelihood estimation. Useful for modeling heterogeneous bimodal data. The parametrization follows the revised BGEV with a location parameter of Otiniano, Lisboa & Ribeiro (2025) doi:10.3390/e27070749, which generalizes Otiniano et al. (2023) doi:10.1007/s10651-023-00566-7.

Installation

# install.packages("remotes")
remotes::install_github("thiagodoregosousa/bgev")

Usage

library(bgev)

set.seed(1)
x <- rbgev(n = 1000, mu = 0, sigma = 1, xi = 0.5, delta = 1)

hist(x, probability = TRUE, breaks = 30)
lines(sort(x), dbgev(sort(x), mu = 0, sigma = 1, xi = 0.5, delta = 1), col = "red")

fit <- bgev_mle(x)
fit$par          # estimated c(mu, sigma, xi, delta)
fit$admissible   # TRUE if the optimum is a regular (trustworthy) maximum

bgev_mle() returns the estimate together with diagnostics (convergence, agree, admissible, boundary, optimum). For discrete or rounded data use the grouped (interval) likelihood:

fit <- bgev_mle(round(x), likelihood = "grouped_likelihood", h = 1)

Estimation is restricted to delta > 0 (bimodality requires it, and delta < 0 makes the likelihood unbounded at x = mu); the distribution functions accept the full delta > -1. See the estimation vignette for the methodology and a Monte Carlo validation.

Functions

Function Description
dbgev() Density of the bimodal GEV distribution
pbgev() Distribution function
qbgev() Quantile function
rbgev() Random generation
bgev_mle() Maximum likelihood estimation with diagnostics
bgev_log_likelihood() Log-likelihood used by bgev_mle()
bgev_profile_likelihood() Profile log-likelihood for a parameter (diagnostic)
bgev_valid_params() Check whether a set of parameters is valid
bgev_support() Compute the support of the distribution for given parameters

See the Reference page for full documentation.

Package layout

References

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.