| negbin {aod} | R Documentation |
Negative-Binomial Model for Counts
Description
The function fits a negative-binomial log linear model accounting for overdispersion in counts y.
Usage
negbin(formula, random, data, phi.ini = NULL, warnings = FALSE,
na.action = na.omit, fixpar = list(),
hessian = TRUE, control = list(maxit = 2000), ...)
Arguments
formula |
A formula for the fixed effects. The left-hand side of the formula must be the counts |
random |
A right-hand formula for the overdispersion parameter(s) |
data |
A data frame containing the response ( |
phi.ini |
Initial values for the overdispersion parameter(s) |
warnings |
Logical to control printing of warnings occurring during log-likelihood maximization. Default to FALSE (no printing). |
na.action |
A function name. Indicates which action should be taken in the case of missing value(s). |
fixpar |
A list with 2 components (scalars or vectors) of the same size, indicating which parameters are
fixed (i.e., not optimized) in the global parameter vector |
hessian |
A logical. When set to |
control |
A list to control the optimization parameters. See |
... |
Further arguments passed to |
Details
For a given count y, the model is:
y~|~\lambda \sim Poisson(~\lambda)
with \lambda following a Gamma distribution Gamma(r,~\theta).
If G denote the gamma function, then:
P(\lambda) = r^{-\theta} * \lambda^{\theta - 1} * \frac{exp(-\frac{\lambda}{r})}{G(\theta)}
E[\lambda] = \theta * r
Var[\lambda] = \theta * r^2
The marginal negative-binomial distribution is:
P(y) = G(y + \theta) * \left(\frac{1}{1 + r}\right)^\theta * \frac{(\frac{r}{1 + r})^y}{y! * G(\theta)}
The function uses the parameterization \mu = \theta * r = exp(X b) = exp(\eta) and \phi = 1 / \theta,
where X is a design-matrix, b is a vector of fixed effects, \eta = X b is the linear predictor and
\phi the overdispersion parameter.
The marginal mean and variance are:
E[y] = \mu
Var[y] = \mu + \phi * \mu^2
The parameters b and \phi are estimated by maximizing the log-likelihood of the marginal model (using the
function optim()). Several explanatory variables are allowed in b. Only one is allowed in \phi.
An offset can be specified in the formula argument to model rates y/T. The offset and the marginal mean
are log(T) and \mu = exp(log(T) + \eta), respectively.
Value
An object of formal class “glimML”: see glimML-class for details.
Author(s)
Matthieu Lesnoff matthieu.lesnoff@cirad.fr, Renaud Lancelot renaud.lancelot@cirad.fr
References
Lawless, J.F., 1987. Negative binomial and mixed Poisson regression. The Canadian Journal of Statistics, 15(3): 209-225.
See Also
glimML-class, glm and optim,
glm.nb in the recommended package MASS,
gnlr in package gnlm available at https://www.commanster.eu/rcode.html.
Examples
# without offset
data(salmonella)
negbin(y ~ log(dose + 10) + dose, ~ 1, salmonella)
library(MASS) # function glm.nb in MASS
fm.nb <- glm.nb(y ~ log(dose + 10) + dose,
link = log, data = salmonella)
coef(fm.nb)
1 / fm.nb$theta # theta = 1 / phi
c(logLik(fm.nb), AIC(fm.nb))
# with offset
data(dja)
negbin(y ~ group + offset(log(trisk)), ~ group, dja)
# phi fixed to zero in group TREAT
negbin(y ~ group + offset(log(trisk)), ~ group, dja,
fixpar = list(4, 0))
# glim without overdispersion
summary(glm(y ~ group + offset(log(trisk)),
family = poisson, data = dja))
# phi fixed to zero in both groups
negbin(y ~ group + offset(log(trisk)), ~ group, dja,
fixpar = list(c(3, 4), c(0, 0)))