Learn R Programming

VGAM (version 1.0-1)

predictvglm: Predict Method for a VGLM fit

Description

Predicted values based on a vector generalized linear model (VGLM) object.

Usage

predictvglm(object, newdata = NULL,
            type = c("link", "response", "terms"),
            se.fit = FALSE, deriv = 0, dispersion = NULL,
            untransform = FALSE, extra = object@extra, ...)

Arguments

object
Object of class inheriting from "vlm", e.g., vglm.
newdata
An optional data frame in which to look for variables with which to predict. If omitted, the fitted linear predictors are used.
type
The value of this argument can be abbreviated. The type of prediction required. The default is the first one, meaning on the scale of the linear predictors. This should be a $n \times M$ matrix.

The alternative "response" is on the

se.fit
logical: return standard errors?
deriv
Non-negative integer. Currently this must be zero. Later, this may be implemented for general values.
dispersion
Dispersion parameter. This may be inputted at this stage, but the default is to use the dispersion parameter of the fitted model.
extra
A list containing extra information. This argument should be ignored.
untransform
Logical. Reverses any parameter link function. This argument only works if type = "link", se.fit = FALSE, deriv = 0. Setting untransform = TRUE does not work for all VGAM family functions; only ones where there
...
Arguments passed into predictvlm.

Value

  • If se.fit = FALSE, a vector or matrix of predictions. If se.fit = TRUE, a list with components
  • fitted.valuesPredictions
  • se.fitEstimated standard errors
  • dfDegrees of freedom
  • sigmaThe square root of the dispersion parameter

Warning

This function may change in the future.

Details

Obtains predictions and optionally estimates standard errors of those predictions from a fitted vglm object.

This code implements smart prediction (see smartpred).

References

Yee, T. W. and Hastie, T. J. (2003) Reduced-rank vector generalized linear models. Statistical Modelling, 3, 15--41.

See Also

predict, vglm, predictvlm, smartpred.

Examples

Run this code
# Illustrates smart prediction
pneumo <- transform(pneumo, let = log(exposure.time))
fit <- vglm(cbind(normal, mild, severe) ~ poly(c(scale(let)), 2),
            propodds, data = pneumo, trace = TRUE, x.arg = FALSE)
class(fit)

(q0 <- head(predict(fit)))
(q1 <- predict(fit, newdata = head(pneumo)))
(q2 <- predict(fit, newdata = head(pneumo)))
all.equal(q0, q1)  # Should be TRUE
all.equal(q1, q2)  # Should be TRUE

head(predict(fit))
head(predict(fit, untransform = TRUE))

p0 <- head(predict(fit, type = "response"))
p1 <- head(predict(fit, type = "response", newdata = pneumo))
p2 <- head(predict(fit, type = "response", newdata = pneumo))
p3 <- head(fitted(fit))
all.equal(p0, p1)  # Should be TRUE
all.equal(p1, p2)  # Should be TRUE
all.equal(p2, p3)  # Should be TRUE

predict(fit, type = "terms", se = TRUE)

Run the code above in your browser using DataLab