| predict.glm(base) | R Documentation |
Obtains predictions and optionally estimates standard errors of those predictions from a fitted generalized linear model object.
predict.glm(object, newdata=NULL, type=c("link", "response", "terms"),
se.fit=FALSE, dispersion=NULL, terms=NULL, ...)
object |
A fitted object of class inheriting from "glm". |
newdata |
Optionally, a new data frame from which to make the predictions. If omitted, the fitted linear predictors are used. |
type |
The type of prediction required. The default is on the
scale of the linear predictors; the alternative "response"
is on the scale of the response variable. Thus for a default
binomial model the default predictions are of log-odds (probabilities
on logit scale) and type = "response" gives the predicted
probabilities. The "terms" option returns a matrix giving the
fitted values of each term in the model formula on the linear predictor
scale
The value of this argument can be abbreviated. |
se.fit |
A switch indicating if standard errors are required. |
dispersion |
The dispersion of the GLM fit to be assumed in
computing the standard errors. If omitted, that returned by
summary applied to the object is used. |
terms |
With type="terms" by default all terms are returned.
A vector of strings specifies which terms are to be returned |
se = FALSE, a vector or matrix of predictions. If se = TRUE, a
list with components
fit |
Predictions |
se.fit |
Estimated standard errors |
residual.scale |
A scalar giving the square root of the dispersion used in computing the standard errors. |
This method is also currently used for objects of
class "survreg" (parametric survival fits from package
survival4) and possibly others. The assumptions made by
predict.glm may not always be right for such objects.
B.D. Ripley
## example from Venables and Ripley (1997, pp. 231-3.)
ldose <- rep(0:5, 2)
numdead <- c(1, 4, 9, 13, 18, 20, 0, 2, 6, 10, 12, 16)
sex <- factor(rep(c("M", "F"), c(6, 6)))
SF <- cbind(numdead, numalive=20-numdead)
budworm.lg <- glm(SF ~ sex*ldose, family=binomial)
summary(budworm.lg)
plot(c(1,32), c(0,1), type="n", xlab="dose",
ylab="prob", log="x")
text(2^ldose, numdead/20,as.character(sex))
ld <- seq(0, 5, 0.1)
lines(2^ld, predict(budworm.lg, data.frame(ldose=ld,
sex=factor(rep("M", length(ld)), levels=levels(sex))),
type="response"))
lines(2^ld, predict(budworm.lg, data.frame(ldose=ld,
sex=factor(rep("F", length(ld)), levels=levels(sex))),
type="response"))