preProcess(x, ...)## S3 method for class 'default':
preProcess(x,
method = c("center", "scale"),
thresh = 0.95,
na.remove = TRUE,
k = 5,
knnSummary = mean,
outcome = NULL,
fudge = .2,
numUnique = 3,
verbose = FALSE,
...)
## S3 method for class 'preProcess':
predict(object, newdata, ...)
preProcess
y
have to estimate the Box-Cox transformation?fastICA
, such as n.comp
preProcess
results in a list with elementsx
BoxCoxTrans
method
thresh
method
includes "range" (and NULL
otherwise)W
and K
matrix of the decompositionThe "range" transformation scales the data to be within [0, 1]. If new samples have values larger or smaller than those in the training set, values will be outside of this range.
The operations are applied in this order: Box-Cox transformation, centering, scaling, range, imputation, PCA, ICA then spatial sign. This is a departure from versions of
If PCA is requested but centering and scaling are not, the values will still be centered and scaled. Similarly, when ICA is requested, the data are automatically centered and scaled.
k-nearest neighbor imputation is carried out by finding the k closest samples (Euclidian distance) in the training set. Imputation via bagging fits a bagged tree model for each predictor (as a function of all the others). This method is simple, accurate and accepts missing values, but it has much higher computational cost.
A warning is thrown if both PCA and ICA are requested. ICA, as implemented by the fastICA
package automatically does a PCA decomposition prior to finding the ICA scores.
The function will throw an error of any variables in x
has less than two unique values.
Box, G. E. P. and Cox, D. R. (1964) An analysis of transformations (with discussion). Journal of the Royal Statistical Society B, 26, 211-252.
Box, G. E. P. and Tidwell, P. W. (1962) Transformation of the independent variables. Technometrics 4, 531-550.
BoxCoxTrans
, boxcox
, prcomp
, fastICA
, spatialSign
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