Density, distribution function, quantile function and random generation
for the zero-inflated negative binomial distribution with
1 2 3 4
vector of quantiles.
vector of probabilities.
Same as in
Probability of structural zero (i.e., ignoring the negative binomial distribution), called phi.
The probability function of Y is 0 with probability phi, and a negative binomial distribution with probability 1-phi. Thus
P(Y=0) = phi + (1-phi) * P(W=0)
where W is distributed as a negative binomial distribution
negbinomial, a VGAM family
function, for the formula of the probability density
function and other details of the negative binomial
dzinegbin gives the density,
pzinegbin gives the distribution function,
qzinegbin gives the quantile function, and
rzinegbin generates random deviates.
pstr0 is recycled to the required
length, and must have values which lie in the interval
These functions actually allow for zero-deflation.
That is, the resulting probability of a zero count
is less than the nominal value of the parent
Zipois for more information.
T. W. Yee
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
munb <- 3; pstr0 <- 0.2; size <- k <- 10; x <- 0:10 (ii <- dzinegbin(x, pstr0 = pstr0, mu = munb, size = k)) max(abs(cumsum(ii) - pzinegbin(x, pstr0 = pstr0, mu = munb, size = k))) # 0 table(rzinegbin(100, pstr0 = pstr0, mu = munb, size = k)) table(qzinegbin(runif(1000), pstr0 = pstr0, mu = munb, size = k)) round(dzinegbin(x, pstr0 = pstr0, mu = munb, size = k) * 1000) # Should be similar ## Not run: barplot(rbind(dzinegbin(x, pstr0 = pstr0, mu = munb, size = k), dnbinom(x, mu = munb, size = k)), las = 1, beside = TRUE, col = c("blue", "green"), ylab = "Probability", main = paste("ZINB(mu = ", munb, ", k = ", k, ", pstr0 = ", pstr0, ") (blue) vs NB(mu = ", munb, ", size = ", k, ") (green)", sep = ""), names.arg = as.character(x)) ## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.