Zero-inflated Weibull distribution
ziweibull.RdDensity, 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
Value
dziweibull gives the density, pziweibull gives the distribution function, and rziweibull generates random deviates.
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.