Learn R Programming

gam (version 1.22-5)

anova.Gam: Analysis of Deviance for a Generalized Additive Model

Description

Produces an ANODEV table for a set of GAM models, or else a summary for a single GAM model

Usage

# S3 method for Gam
anova(object, ..., test = c("Chisq", "F", "Cp"))

# S3 method for Gam summary(object, dispersion = NULL, ...)

Arguments

object

a fitted Gam

...

other fitted Gams for anova

test

a character string specifying the test statistic to be used. Can be one of '"F"', '"Chisq"' or '"Cp"', with partial matching allowed, or 'NULL' for no test.

dispersion

a dispersion parameter to be used in computing standard errors

Author

Written by Trevor Hastie, following closely the design in the "Generalized Additive Models" chapter (Hastie, 1992) in Chambers and Hastie (1992).

Details

These are methods for the functions anova or summary for objects inheriting from class Gam. See anova for the general behavior of this function and for the interpretation of test.

When called with a single Gam object, a special pair of anova tables for Gam models is returned. This gives a breakdown of the degrees of freedom for all the terms in the model, separating the projection part and nonparametric part of each, and returned as a list of two anova objects. For example, a term specified by s() is broken down into a single degree of freedom for its linear component, and the remainder for the nonparametric component. In addition, a type of score test is performed for each of the nonparametric terms. The nonparametric component is set to zero, and the linear part is updated, holding the other nonparametric terms fixed. This is done efficiently and simulataneously for all terms.

References

Hastie, T. J. (1992) Generalized additive models. Chapter 7 of Statistical Models in S eds J. M. Chambers and T. J. Hastie, Wadsworth & Brooks/Cole.

Hastie, T. and Tibshirani, R. (1990) Generalized Additive Models. London: Chapman and Hall.

Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. New York: Springer.

Examples

Run this code

data(gam.data)
Gam.object <- gam(y~s(x,6)+z,data=gam.data)
anova(Gam.object)
Gam.object2 <- update(Gam.object, ~.-z)
anova(Gam.object, Gam.object2, test="Chisq")

Run the code above in your browser using DataLab