Zero-inflated inverse Gaussian distribution
ziinvgauss.RdDensity, distribution function, and random generation for the zero-inflated inverse Gaussian distribution.
Usage
dziinvgauss(x, mean = 1, shape = 1, zeroprob = 0, log = FALSE)
pziinvgauss(q, mean = 1, shape = 1, zeroprob = 0, lower.tail = TRUE, log.p = FALSE)
rziinvgauss(n, mean = 1, shape = 1, zeroprob = 0)Arguments
- x, q
vector of quantiles
- mean
location parameter
- shape
shape parameter, must be positive.
- zeroprob
zero-probability, must be in \([0, 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
dziinvgauss gives the density, pziinvgauss gives the distribution function, and rziinvgauss generates random deviates.
Details
This implementation of zidinvgauss allows for automatic differentiation with RTMB.
$$f(x;\,\mu,\lambda,p_0) = p_0\,\mathbf{1}[x=0] + (1-p_0)\,f_{\mathrm{IG}}(x;\,\mu,\lambda)\,\mathbf{1}[x>0],$$
where \(p_0\) is zeroprob and \(f_{\mathrm{IG}}\) is the inverse Gaussian density.
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, as in its ZAIG family.