| mpower {corpcor} | R Documentation |
mpower computes m^alpha, i.e.
the alpha-th power of the real symmetric
matrix m.
mpower(m, alpha, pseudo=FALSE, tol)
m |
a real-valued symmetric matrix. |
alpha |
exponent. |
pseudo |
if pseudo=TRUE then all zero eigenvalues are dropped
(e.g. for computing the pseudoinverse). The default is
to use all eigenvalues. |
tol |
tolerance - eigenvalues with absolute value smaller or equal
to tol are considered identically zero (default:
tol = max(dim(m))*max(abs(eval))*.Machine$double.eps).
|
The matrix power of m is obtained by first computing the spectral
decomposition of m, and subsequent modification of the resulting eigenvalues.
Note that m is assumed to by symmetric, and only
its lower triangle (diagonal included) is used in eigen.
For computing the matrix power of cor.shrink use
the vastly more efficient function powcor.shrink.
mpower returns
a matrix of the same dimensions as m.
Korbinian Strimmer (http://strimmerlab.org).
# load corpcor library
library("corpcor")
# generate symmetric matrix
p = 10
n = 20
X = matrix(rnorm(n*p), nrow = n, ncol = p)
m = cor(X)
m %*% m
mpower(m, 2)
solve(m)
mpower(m, -1)
msq = mpower(m, 0.5)
msq %*% msq
m
mpower(m, 1.234)