Learn R Programming

refund (version 0.1-1)

predict.fgam: Prediction from a fitted FGAM model

Description

Takes a fitted fgam-object produced by fgam and produces predictions given a new set of values for the model covariates or the original values used for the model fit. Predictions can be accompanied by standard errors, based on the posterior distribution of the model coefficients. This is a wrapper function for predict.gam().

Usage

## S3 method for class 'fgam'
## S3 method for class 'fgam':
predict(object, newdata, type = "response", se.fit = FALSE, terms = NULL, 
PredOutOfRange = FALSE, ...)

Arguments

object
a fitted fgam object as produced by fgam
newdata
a named list 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. All variables provided to newdata should be in the format supplied to <
type
see predict.gam for details.
se.fit
see predict.gam for details.
terms
see predict.gam for details.
PredOutOfRange
if this argument is true then any functional predictor values in newdata corresponding to fgam terms that are greater[less] than the maximum[minimum] of the domain of the marginal basis for the rows of the tensor product smooth are set to the
...
additional arguments passed on to predict.gam.

Value

  • If type == "lpmatrix", the design matrix for the supplied covariate values in long format. If se == TRUE, a list with entries fit and se.fit containing fits and standard errors, respectively. If type == "terms" or "iterms" each of these lists is a list of matrices of the same dimension as the response for newdata containing the linear predictor and its se for each term.

See Also

fgam, predict.gam

Examples

Run this code
require(splines)
######### Octane data example #########
data(gasoline)
N <- length(gasoline$octane)
wavelengths = 2*450:850
nir = matrix(NA, 60,401)
test <- sample(60,20)
for (i in 1:60) nir[i,] = gasoline$NIR[i, ] #changes class from AsIs to matrix
y <- gasoline$octane
fit <- fgam(y~af(nir,xind=wavelengths,splinepars=list(k=c(6,6),m=list(c(2,2),c(2,2)))),
              subset=(1:N)[-test])
preds <- predict(fit,newdata=list(nir=nir[test,]),type='response')
plot(preds,y[test])
abline(a=0,b=1)

Run the code above in your browser using DataLab