ziweibull: Zero-inflated Weibull distribution

ziweibullR Documentation

Zero-inflated Weibull distribution

Description

Density, distribution function, and random generation for the zero-inflated Weibull distribution.

Usage

dziweibull(x, shape, scale, zeroprob = 0, log = FALSE)

pziweibull(q, shape, scale, zeroprob = 0, lower.tail = TRUE, log.p = FALSE)

rziweibull(n, shape, scale, zeroprob = 0)

Arguments

x, q

vector of quantiles

shape

positive shape parameter

scale

positive scale parameter

zeroprob

zero-inflation probability between 0 and 1.

log, log.p

logical; if TRUE, probabilities/ densities p are returned as \log(p).

lower.tail

logical; if TRUE, probabilities are P[X \le x], otherwise, P[X > x].

n

number of random values to return

Details

This implementation allows for automatic differentiation with RTMB.

f(x;\,k,\lambda,p_0) = p_0\,\mathbf{1}[x=0] + (1-p_0)\,f_{\mathrm{Weibull}}(x;\,k,\lambda)\,\mathbf{1}[x>0],

where p_0 is zeroprob, k = shape, \lambda = scale.

Because the continuous part places no mass at zero, zeroprob is exactly P(X = 0), and zero-inflation coincides with a hurdle model here. The two constructions only differ for discrete distributions, where the base distribution can generate zeros of its own. GAMLSS therefore calls distributions of this type zero-adjusted rather than zero-inflated.

Value

dziweibull gives the density, pziweibull gives the distribution function, and rziweibull generates random deviates.

Examples

x <- rziweibull(1, 1, 1, 0.5)
d <- dziweibull(x, 1, 1, 0.5)
p <- pziweibull(x, 1, 1, 0.5)

RTMBdist documentation built on Oct. 31, 2026, 5:07 p.m.