predict.glm {stats}  R Documentation 
Predict Method for GLM Fits
Description
Obtains predictions and optionally estimates standard errors of those predictions from a fitted generalized linear model object.
Usage
## S3 method for class 'glm'
predict(object, newdata = NULL,
type = c("link", "response", "terms"),
se.fit = FALSE, dispersion = NULL, terms = NULL,
na.action = na.pass, ...)
Arguments
object 
a fitted object of class inheriting from 
newdata 
optionally, a data frame in which to look for variables with which to predict. 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 The value of this argument can be abbreviated. 
se.fit 
logical 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

terms 
with 
na.action 
function determining what should be done with missing
values in 
... 
further arguments passed to or from other methods. 
Details
If newdata
is omitted the predictions are based on the data
used for the fit. In that case how cases with missing values in the
original fit is determined by the na.action
argument of that
fit. If na.action = na.omit
omitted cases will not appear in
the residuals, whereas if na.action = na.exclude
they will
appear (in predictions and standard errors), with residual value
NA
. See also napredict
.
Value
If se.fit = FALSE
, a vector or matrix of predictions.
For type = "terms"
this is a matrix with a column per term, and
may have an attribute "constant"
.
If se.fit = TRUE
, a list with components
fit 
Predictions, as for 
se.fit 
Estimated standard errors. 
residual.scale 
A scalar giving the square root of the dispersion used in computing the standard errors. 
Note
Variables are first looked for in newdata
and then searched for
in the usual way (which will include the environment of the formula
used in the fit). A warning will be given if the
variables found are not of the same length as those in newdata
if it was supplied.
See Also
Examples
require(graphics)
## example from Venables and Ripley (2002, pp. 1902.)
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 = 20numdead)
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"))