MASS (version 7.3-55)

# theta.md: Estimate theta of the Negative Binomial

## Description

Given the estimated mean vector, estimate theta of the Negative Binomial Distribution.

## Usage

theta.md(y, mu, dfr, weights, limit = 20, eps = .Machine$double.eps^0.25)theta.ml(y, mu, n, weights, limit = 10, eps = .Machine$double.eps^0.25,
trace = FALSE)theta.mm(y, mu, dfr, weights, limit = 10, eps = .Machine$double.eps^0.25) ## Arguments y Vector of observed values from the Negative Binomial. mu Estimated mean vector. n Number of data points (defaults to the sum of weights) dfr Residual degrees of freedom (assuming theta known). For a weighted fit this is the sum of the weights minus the number of fitted parameters. weights Case weights. If missing, taken as 1. limit Limit on the number of iterations. eps Tolerance to determine convergence. trace logical: should iteration progress be printed? ## Value The required estimate of theta, as a scalar. For theta.ml, the standard error is given as attribute "SE". ## Details theta.md estimates by equating the deviance to the residual degrees of freedom, an analogue of a moment estimator. theta.ml uses maximum likelihood. theta.mm calculates the moment estimator of theta by equating the Pearson chi-square $$\sum (y-\mu)^2/(\mu+\mu^2/\theta)$$ to the residual degrees of freedom. ## See Also glm.nb ## Examples Run this code # NOT RUN { quine.nb <- glm.nb(Days ~ .^2, data = quine) theta.md(quine$Days, fitted(quine.nb), dfr = df.residual(quine.nb))
theta.ml(quine$Days, fitted(quine.nb)) theta.mm(quine$Days, fitted(quine.nb), dfr = df.residual(quine.nb))

## weighted example
yeast <- data.frame(cbind(numbers = 0:5, fr = c(213, 128, 37, 18, 3, 1)))
fit <- glm.nb(numbers ~ 1, weights = fr, data = yeast)
summary(fit)
mu <- fitted(fit)
theta.md(yeast$numbers, mu, dfr = 399, weights = yeast$fr)
theta.ml(yeast$numbers, mu, limit = 15, weights = yeast$fr)
theta.mm(yeast$numbers, mu, dfr = 399, weights = yeast$fr)
# }


Run the code above in your browser using DataCamp Workspace