pls (version 1.2-1)

predict.mvr: Predict Method for PLSR and PCR

Description

Prediction for mvr (PCR, PLSR) models. New responses or scores are predicted using a fitted model and a new matrix of observations.

Usage

## S3 method for class 'mvr':
predict(object, newdata, comps = 1:object$ncomp,
        type = c("response", "scores"), cumulative = TRUE,
        na.action = na.pass, ...)

Arguments

object
an mvr object. The fitted model
newdata
a data frame. The new data. If missing, the training data is used.
comps
vector of positive integers. The components to use in the prediction. See below.
type
character. Whether to predict scores or response values
cumulative
logical. How the elements of comps are interpreted. Ignored if type is "scores". See below
na.action
function determining what should be done with missing values in newdata. The default is to predict NA. See na.omit for alternatives.
...
further arguments. Currently not used

Value

  • When type is "response", a three dimensional array of predicted response values is returned. The dimensions correspond to the observations, the response variables and the model sizes, respectively.

    When type is "scores", a score matrix is returned.

encoding

latin1

Details

When type is "response" (default), predicted response values are returned. If cumulative is TRUE, the elements of comps are interpreted cumulatively, i.e. predictions for models with comps[1] components, comps[2] components, etc., are returned. Otherwise, predicted response values for a single model with the exact components in comps are returned.

When type is "scores", predicted score values are returned for the components given in comps.

It is also possible to supply a matrix instead of a data frame as newdata, which is then assumed to be the $X$ data matrix. Note that the usual checks for the type of the data are then omitted. Also note that this is only possible with predict; it will not work in functions like predplot, RMSEP or R2, because they also need the response variable of the new data.

See Also

mvr, summary.mvr, coef.mvr, plot.mvr

Examples

Run this code
data(NIR)
nir.mvr <- mvr(y ~ X, ncomp = 5, data = NIR[NIR$train,])

## Predicted responses for models with 1, 2, 3 and 4 components
pred.resp <- predict(nir.mvr, comps = 1:4, newdata = NIR[!NIR$train,])

## Predicted responses for a single model with components 1, 2, 3, 4
predict(nir.mvr, comps = 1:4, cumulative = FALSE, newdata = NIR[!NIR$train,])

## Predicted scores
predict(nir.mvr, comps = 1:3, type = "scores", newdata = NIR[!NIR$train,])

Run the code above in your browser using DataLab