R: Estimate the Shape Parameter of the Gamma Distribution in a GLM Fit
gamma.shape {MASS}R Documentation
Estimate the Shape Parameter of the Gamma Distribution in a GLM Fit
Description
Find the maximum likelihood estimate of the shape parameter of
the gamma distribution after fitting a Gamma generalized
linear model.
Usage
## S3 method for class 'glm':
gamma.shape(object, it.lim = 10,
eps.max = .Machine$double.eps^0.25, verbose = FALSE, ...)
Arguments
object
Fitted model object from a Gamma family or quasi family with
variance = "mu^2".
it.lim
Upper limit on the number of iterations.
eps.max
Maximum discrepancy between approximations for the iteration
process to continue.
verbose
If TRUE, causes successive iterations to be printed out. The
initial estimate is taken from the deviance.
...
further arguments passed to or from other methods.
Details
A glm fit for a Gamma family correctly calculates the maximum
likelihood estimate of the mean parameters but provides only a
crude estimate of the dispersion parameter. This function takes
the results of the glm fit and solves the maximum likelihood
equation for the reciprocal of the dispersion parameter, which is
usually called the shape (or exponent) parameter.
Value
List of two components
alpha
the maximum likelihood estimate
SE
the approximate standard error, the square-root of the reciprocal of
the observed information.
References
Venables, W. N. and Ripley, B. D. (2002)
Modern Applied Statistics with S. Fourth edition. Springer.
See Also
gamma.dispersion
Examples
clotting <- data.frame(
u = c(5,10,15,20,30,40,60,80,100),
lot1 = c(118,58,42,35,27,25,21,19,18),
lot2 = c(69,35,26,21,18,16,13,12,12))
clot1 <- glm(lot1 ~ log(u), data = clotting, family = Gamma)
gamma.shape(clot1)
## Not run:
Alpha: 538.13
SE: 253.60
## End(Not run)
gm <- glm(Days + 0.1 ~ Age*Eth*Sex*Lrn,
quasi(link=log, variance="mu^2"), quine,
start = c(3, rep(0,31)))
gamma.shape(gm, verbose = TRUE)
## Not run:
Initial estimate: 1.0603
Iter. 1 Alpha: 1.23840774338543
Iter. 2 Alpha: 1.27699745778205
Iter. 3 Alpha: 1.27834332265501
Iter. 4 Alpha: 1.27834485787226
Alpha: 1.27834
SE: 0.13452
## End(Not run)
summary(gm, dispersion = gamma.dispersion(gm)) # better summary
[Package MASS version 7.2-44 Index]