predict.gam {mgcv} | R Documentation

## Prediction from fitted GAM model

### Description

Takes a fitted `gam` object produced by `gam()` and produces predictions given a new set of values for the model covariates or the original values used for the model fit.

### Usage

    predict.gam(object,newdata,type="link",se.fit=FALSE,...)

### Arguments

`object` | a fitted `gam` object as produced by `gam()`.
`newdata` | A data frame containing the values of the model covariates at which predictions are required. If this is not provided then predictions corresponding to the original data are returned.

`type`

When this has the value `"link"` (default) the linear predictor (possibly with associated standard errors) is returned. When `type="terms"` each component of the linear predictor is returned seperately (possibly with standard errors): this includes parametric model components, followed by each smooth component, but excludes any offset. When `type="response"` predictions on the scale of the response are returned (possibly with approximate standard errors). When `type="lpmatrix"` then a matrix is returned which yields the values of the linear predictor (minus any offset) when applied to the parameter vector (in this case `se.fit` is ignored). The latter option is most useful for getting variance estimates for integrated quantities.

`se.fit` | when this is TRUE (not default) standard error estimates are returned for each prediction.
`...` | other arguments.

### Value

If `type=="lpmatrix"` then a matrix is returned which will give a vector of linear predictor values (minus any offest) at the supplied covariate values, when applied to the model coefficient vector. Otherwise, if `se.fit` is `TRUE` then a 2 item list is returned with items (both arrays) `fit` and `se.fit` containing predictions and associated standard error estimates, otherwise an array of predictions is returned. The dimensions of the returned arrays depends on whether `type` is `"terms"` or not: if it is then the array is 2 dimensional with each term in the linear predictor separate, otherwise the array is 1 dimensional and contains the linear predictor/predicted values (or corresponding s.e.s). The linear predictor returned termwise will not include the offset.

### WARNING

Note that the behaviour of this function is not identical to `predict.gam()` in Splus.

### Author(s)

Simon N. Wood simon@stats.gla.ac.uk

### References

Gu and Wahba (1991) Minimizing GCV/GML scores with multiple smoothing parameters via the Newton method. SIAM J. Sci. Statist. Comput. 12:383-398

Wood, S.N. (2000) Modelling and Smoothing Parameter Estimation with Multiple Quadratic Penalties. J.R.Statist.Soc.B 62(2):413-428

Wood, S.N. (2003) Thin plate regression splines. J.R.Statist.Soc.B 65(1):95-114

http://www.stats.gla.ac.uk/~simon/

### See Also

`gam` `plot.gam`

### Examples

    library(mgcv)
    n<-200
    sig2<-4
    x0 <- runif(n, 0, 1)
    x1 <- runif(n, 0, 1)
    x2 <- runif(n, 0, 1)
    x3 <- runif(n, 0, 1)
    pi <- asin(1) * 2
    y <- 2 * sin(pi * x0)
    y <- y + exp(2 * x1) - 3.75887
    y <- y + 0.2 * x2^11 * (10 * (1 - x2))^6 + 10 * (10 * x2)^3 * (1 - x2)^10 - 1.396
    e <- rnorm(n, 0, sqrt(abs(sig2)))
    y <- y + e
    b<-gam(y~s(x0)+s(x1)+s(x2)+s(x3))
    newd<-data.frame(x0=(0:30)/30,x1=(0:30)/30,x2=(0:30)/30,x3=(0:30)/30)
    pred<-predict.gam(b,newd)

[Package Contents]