Sum of squares block weighting
Sum of squares block weighting: allows to scale blocks of variables, but keeping the relative weights of the variables inside a block.
blockNorm(X, targetnorm = 1)
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) |
The function computes a scaling factor, which, multiplied by the input matrix, produces a matrix with a pre–determined sum of squares.
a list with components Xscaled
, the scaled matrix and f
, the
scaling factor
This is a R port of the ‘MBnorm.m’ function of the MB matlab toolbox by Fran van den Berg which can be found at: http://www.models.life.ku.dk/~courses/MBtoolbox/mbtmain.htm
Antoine Stevens
Eriksson, L., Johansson, E., Kettaneh, N., Trygg, J., Wikstrom, C., and Wold, S., 2006. Multi- and Megavariate Data Analysis. MKS Umetrics AB.
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
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.