glm.binomial.disp {dispmod} | R Documentation |
This function estimates overdispersed binomial logit models using the approach discussed by Williams (1982).
glm.binomial.disp(object, maxit = 30, verbose = TRUE)
object |
an object of class `"glm"' providing a fitted binomial logistic regression model. |
maxit |
integer giving the maximal number of iterations for the model fitting procedure. |
verbose |
logical, if TRUE information are printed during each step of the algorithm. |
Extra-binomial variation in logistic linear models is discussed, among others, in Collett (1991). Williams (1982) proposed a quasi-likelihood approach for handling overdispersion in logistic regression models.
Suppose we observe the number of successes y_i in m_i trials, for i=1,...,n, such that
y_i|p_i ~ Binomial(m_i, p_i)
p_i ~ Beta(gamma, delta)
Under this model, each of the n binomials has a different probability of success p_i, where p_i is a random draw from a beta distribution. Thus,
E(p_i) = gamma/(gamma+delta) = theta
Var(p_i) = phi*theta*(1-theta)
Assume gamma > 1 and delta > 1, so that the beta density is equal to zero at both zero and one, and thus 0 < phi <= 1/3. From this, the unconditional mean and variance can be calculated:
E(y_i) = m_i*theta
Var(y_i) = m_i*theta*(1-theta)*(1+(m_i-1)*phi)
so unless m_i=1 or phi=0, the unconditional variance of y_i is larger than binomial variance.
Identical expressions for the mean and variance of y_i can be obtained if we assume that the $m_i$ counts on the i-th unit are dependent, with the same correlation phi. In this case, -1/(m_i-1) < phi <= 1.
The method proposed by Williams uses an iterative algorithm for estimating the dispersion parameter phi and hence the necessary weights 1/(1+phi*(μ_i - 1)) (for details see Williams, 1982).
The function returns an object of class `"glm"' with the usual information (see help(glm)
) and the added components:
dispersion |
the estimated dispersion parameter. |
disp.weights |
the final weights used to fit the model. |
Based on a similar procedure available in Arc (Cook and Weisberg, http://www.stat.umn.edu/arc)
Luca Scrucca, luca@stat.unipg.it
Collett, D. (1991), Modelling Binary Data, London: Chapman and Hall.
Williams, D. A. (1982), Extra-binomial variation in logistic linear models, Applied Statistics, 31, 144–148.
lm
, glm
, lm.disp
, glm.poisson.disp
data(orobanche) attach(orobanche) h <- factor(host) v <- factor(variety, levels=c("O.a75", "O.a73")) mod <- glm(cbind(germinated, seeds-germinated) ~ h + v + h*v, family=binomial(logit)) summary(mod) mod.disp <- glm.binomial.disp(mod) summary(mod.disp) mod.disp$dispersion