mgcv-package {mgcv}R Documentation

GAMs with GCV smoothness estimation and GAMMs by REML/PQL


mgcv provides functions for generalized additive modelling and generalized additive mixed modelling. Particular features of the package are facilities for automatic smoothness selection, and the provision of a variety of smooths of more than one variable. A Bayesian approach to confidence/credible interval calculation is provided. Lower level routines for generalized ridge regression and penalized linearly constrained least squares are also provided.


mgcv provides generalized additive modelling functions gam, predict.gam and plot.gam, which are very similar in use to the S functions of the same name designed by Trevor Hastie. However the underlying representation and estimation of the models is based on a penalized regression spline approach, with automatic smoothness selection. A number of other functions such as summary.gam and anova.gam are also provided, for extracting information from a fitted gamObject.

Use of gam is much like use of glm, except that within a gam model formula, isotropic smooths of any number of predictors can be specified using s terms, while scale invariant smooths of any number of predictors can be specified using te terms. Estimation is by penalized likelihood or quasi-likelihood maximization, with smoothness selection by GCV or gAIC/ UBRE. See gam, gam.models and gam.selection for some discussion of model specification and selection. For detailed control of fitting see gam.convergence, gam.method and gam.control. For checking and visualization see gam.check and vis.gam and plot.gam.

A Bayesian approach to smooth modelling is used to derive standard errors on predictions, and hence credible intervals. The Bayesian covariance matrix for the model coefficients is returned in Vp of the gamObject. See predict.gam for examples of how this can be used to obtain credible regions for any quantity derived from the fitted model, either directly, or by direct simulation from the posterior distribution of the model coefficients. Frequentist approximations can be used for hypothesis testing: see anova.gam and summary.gam, but note that the underlying approximations are not always good in this case.

The package also provides a generalized additive mixed modelling function, gamm, based on glmmPQL from the MASS library and lme from the nlme library.

Some of the underlying GAM fitting methods are available as low level fitting functions: see magic and mgcv. Penalized weighted least squares with linear equality and inequality constraints is provided by pcls.

For a complete list of functions type library(help=mgcv).


Simon Wood <>

Maintainer: Simon Wood <>


Wood, S.N. (2006) Generalized Additive Models: an introduction with R, CRC


## see examples for gam and gamm

[Package mgcv version 1.3-12 Index]