lhp: The Log-Hyperbolic Distribution

View source: R/01_bchp.R

lhpR Documentation

The Log-Hyperbolic Distribution

Description

Density, distribution function, quantile function, and random generation for the log-hyperbolic distribution with parameters mu, sigma, and nu.

Usage

dlhp(x, mu, sigma, nu, log = FALSE, ...)

plhp(q, mu, sigma, nu, lower.tail = TRUE, ...)

qlhp(p, mu, sigma, nu, lower.tail = TRUE, ...)

rlhp(n, mu, sigma, nu)

Arguments

x, q

vector of positive quantiles.

mu

vector of strictly positive scale parameters.

sigma

vector of strictly positive relative dispersion parameters.

nu

strictly positive heavy-tailedness parameter.

log

logical; if TRUE, probabilities p are given as log(p).

...

further arguments.

lower.tail

logical; if TRUE (default), probabilities are P[X <= x], otherwise, P[X > x].

p

vector of probabilities.

n

number of random values to return.

Details

A random variable X has a log-hyperbolic distribution with parameter mu and sigma if log(X) follows a hyperbolic distribution with location parameter log(mu) and dispersion parameter sigma. It can be showed that mu is the median of X.

Author(s)

Rodrigo M. R. de Medeiros <rodrigo.matheus@live.com>

References

Vanegas, L. H., and Paula, G. A. (2016). Log-symmetric distributions: statistical properties and parameter estimation. Brazilian Journal of Probability and Statistics, 30, 196-220.

Examples

mu <- 8
sigma <- 1
nu <- 4

# Sample generation
x <- rlhp(10000, mu, sigma, nu)

# Density
hist(x, prob = TRUE, main = "The Log-Hyperbolic Distribution", col = "white")
curve(dlhp(x, mu, sigma, nu), add = TRUE, col = 2, lwd = 2)
legend("topright", "Probability density function", col = 2, lwd = 2, lty = 1)

# Distribution function
plot(ecdf(x), main = "The Log-Hyperbolic Distribution", ylab = "Distribution function")
curve(plhp(x, mu, sigma, nu), add = TRUE, col = 2, lwd = 2)
legend("bottomright", c("Emp. distribution function", "Theo. distribution function"),
  col = c(1, 2), lwd = 2, lty = c(1, 1)
)

# Quantile function
plot(seq(0.01, 0.99, 0.001), quantile(x, seq(0.01, 0.99, 0.001)),
  type = "l",
  xlab = "p", ylab = "Quantile function", main = "The Log-Hyperbolic Distribution"
)
curve(qlhp(x, mu, sigma, nu), add = TRUE, col = 2, lwd = 2, from = 0, to = 1)
legend("topleft", c("Emp. quantile function", "Theo. quantile function"),
  col = c(1, 2), lwd = 2, lty = c(1, 1)
)

rdmatheus/BCNSM documentation built on Feb. 8, 2024, 1:28 a.m.