blockNorm {prospectr} | R Documentation |
Sum of squares block weighting
Description
Sum of squares block weighting: allows to scale blocks of variables, but keeping the relative weights of the variables inside a block.
Usage
blockNorm(X, targetnorm = 1)
Arguments
X |
a numeric matrix to transform (optionally a data frame that can be coerced to a numerical matrix). |
targetnorm |
desired sum of squares for a block of variables (default = 1) |
Details
The function computes a scaling factor, which, multiplied by the input matrix, produces a matrix with a pre–determined sum of squares.
Value
a list with components Xscaled
, the scaled matrix and f
, the
scaling factor
Note
This is a R port of the ‘MBnorm.m’ function of the MB matlab toolbox by Fran van den Berg.
Author(s)
Antoine Stevens
References
Eriksson, L., Johansson, E., Kettaneh, N., Trygg, J., Wikstrom, C., and Wold, S., 2006. Multi- and Megavariate Data Analysis. MKS Umetrics AB.
See Also
blockScale
, standardNormalVariate
,
detrend
Examples
X <- matrix(rnorm(100), ncol = 10)
# Block normalize to sum of square equals to 1
res <- blockNorm(X, targetnorm = 1)
sum(res$Xscaled^2) # check