Pre-process a matrix for PCA
Scaling and centering a matrix.
prep(object, scale = c("none", "pareto", "vector", "uv"), center = TRUE, eps = 1e-12, simple = TRUE, reverse = FALSE, ...)
object |
Numerical matrix (or an object coercible to such)
with samples in rows and variables as columns. Also takes
|
scale |
One of "UV" (unit variance a=a/σ_{a})
"vector" (vector normalisation b=b/||b||), "pareto" (sqrt
UV) or "none" to indicate which scaling should be used to scale
the matrix with a variables and b samples. Can also be
a vector of scales which should be used to scale the
matrix. |
center |
Either a logical which indicates if the matrix
should be mean centred or not, or a vector with averages which
should be suntracted from the matrix. |
eps |
Minimum variance, variable with lower variance are not scaled and warning is issued instead. |
simple |
Logical indicating if only the data should be returned or a list with the pre-processing statistics as well. |
reverse |
Logical indicating if matrix should be 'post-processed' instead by multiplying each column with its scale and adding the center. In this case, center and scale should be vectors with the statistics (no warning is issued if not, instead output becomes the same as input). |
... |
Only used for passing through arguments. |
Does basically the same as scale
but adds some
alternative scaling options and functionality for treating
pre-processing as part of a model.
A pre-processed matrix or a list with
center |
a vector with the estimated centers |
scale |
a vector with the estimated scales |
data |
the pre (or post) processed data |
Henning Redestig
object <- matrix(rnorm(50), nrow=10) res <- prep(object, scale="uv", center=TRUE, simple=FALSE) obj <- prep(object, scale=res$scale, center=res$center) ## same as original sum((object - prep(obj, scale=res$scale, center=res$center, rev=TRUE))^2)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.