Learn R Programming

caret (version 3.45)

preProcess: Pre-Processing of Predictors

Description

Pre-processing transformation (centering, scaling etc) can be estimated from the training data and applied to any data set with the same variables.

Usage

preProcess(x, ...)

## S3 method for class 'default': preProcess(x, method = c("center", "scale"), thresh = 0.95, na.remove = TRUE, ...)

## S3 method for class 'preProcess': predict(object, newdata, ...)

Arguments

x
a matrix or data frame
method
a character vector specifying the type of processing. Possible values are "center", "scale", "pca" and "spartialSign"
thresh
a cutoff for the cumulative percent of variance to be retained by PCA
na.remove
a logical; should missing values be removed from the calculations?
object
an object of class preProcess
newdata
a matrix or data frame of new data to be pre-processed
...
Additional arguments (currently this argument is not used)

Value

  • preProcess results in a list with elements
  • callthe function call
  • dimthe dimensions of x
  • meana vector of means (if centering was requested)
  • stda vector of standard deviations (if scaling or PCA was requested)
  • rotationa matrix of eigenvectors if PCA was requested
  • methodthe value ofmethod
  • threshthe value ofthresh
  • numCompthe number of principal components required of capture the specified amount of variance

Details

The operations are applied in this order: centering, scaling, PCA and spatial sign. If PCA is requested but scaling is not, the values will still be scaled.

The function will throw an error of any variables in x has less than two unique values.

See Also

prcomp, spatialSign

Examples

Run this code
data(BloodBrain)
# one variable has one unique value
preProc <- preProcess(bbbDescr[1:100,])

preProc <- preProcess(bbbDescr[1:100,-3])
training <- predict(preProc, bbbDescr[1:100,-3])
test <- predict(preProc, bbbDescr[101:208,-3])

Run the code above in your browser using DataLab