eespcaForK: Multi-PC version of Eigenvectors from Eigenvalues Sparse Principal Component Analysis (EESPCA)
Description
Computes multiple sparse principal components of the specified data matrix via sequential application of
the Eigenvectors from Eigenvalues Sparse Principal Component Analysis (EESPCA) algorithm.
After computing the first sparse PC via the eespca function,
subsequent sparse PCs are computing by repeatedly applying eespca to the residual matrix formed
by subtracting the reconstruction of X from the original X.
Multiple sparse PCs are not guaranteed to be orthogonal.
Note that the accuracy of the sparse approximation declines substantially for PCs with very small
variances. To avoid this issue, k should not be set higher than the number of statistically
significant PCs according to a Tracey-Widom test.
"V": Matrix of sparse loadings for the first k PCs.
"lambdas": Vector of variances of the first k sparse PCs.
Arguments
X
An n-by-p data matrix for which the first k sparse PCs will be computed.
k
The number of sparse PCs to compute. The specified k must be 2 or greater (for k=1, use
the eespca method). A check is made that k is not greater than the maximum theoretical
rank of X but, for performance reasons, a check is NOT made that
k is less than or equal to the actual rank of X.
max.iter
See description for eespca
sparse.threshold
See description for eespca
lambda.diff.threshold
See description for eespca
compute.sparse.lambda
See description for eespca
sub.mat.max.iter
See description for eespca
trace
See description for eespca
References
Frost, H. R. (2021). Eigenvectors from Eigenvalues Sparse Principal Component Analysis (EESPCA). arXiv e-prints. https://arxiv.org/abs/2006.01924