sparseEigen
Computation of Sparse Eigenvectors of a Matrix
Description
Computation of sparse eigenvectors of a matrix (aka sparse PCA) with running time 2-3 orders of magnitude lower than existing methods and better final performance in terms of recovery of sparsity pattern and estimation of numerical values. Can handle covariance matrices as well as data matrices with real or complex-valued entries. Different levels of sparsity can be specified for each individual ordered eigenvector and the method is robust in parameter selection. See vignette for a detailed documentation and comparison, with several illustrative examples. The package is based on the paper: K. Benidis, Y. Sun, P. Babu, and D. P. Palomar (2016). "Orthogonal Sparse PCA and Covariance Estimation via Procrustes Reformulation," IEEE Transactions on Signal Processing <doi:10.1109/TSP.2016.2605073>.
Downloads
599
Last 30 days
6637th
1.7K
Last 90 days
6.2K
Last year
Trend: +0.8% (30d vs prior 30d)
CRAN Check Status
Show all 14 flavors
| Flavor | Status |
|---|---|
| r-devel-linux-x86_64-debian-clang | NOTE |
| r-devel-linux-x86_64-debian-gcc | NOTE |
| r-devel-linux-x86_64-fedora-clang | OK |
| r-devel-linux-x86_64-fedora-gcc | OK |
| r-devel-macos-arm64 | OK |
| r-devel-windows-x86_64 | OK |
| r-oldrel-macos-arm64 | NOTE |
| r-oldrel-macos-x86_64 | NOTE |
| r-oldrel-windows-x86_64 | NOTE |
| r-patched-linux-x86_64 | OK |
| r-release-linux-x86_64 | OK |
| r-release-macos-arm64 | OK |
| r-release-macos-x86_64 | OK |
| r-release-windows-x86_64 | OK |
Check details (5 non-OK)
CRAN incoming feasibility
Maintainer: ‘Daniel P. Palomar <daniel.p.palomar@gmail.com>’ Package CITATION file contains call(s) to old-style personList() or as.personList(). Please use c() on person objects instead. Package CITATION file contains call(s) to old-style citEntry(). Please use bibentry() instead.
CRAN incoming feasibility
Maintainer: ‘Daniel P. Palomar <daniel.p.palomar@gmail.com>’ Package CITATION file contains call(s) to old-style personList() or as.personList(). Please use c() on person objects instead. Package CITATION file contains call(s) to old-style citEntry(). Please use bibentry() instead.
LazyData
'LazyData' is specified without a 'data' directory
LazyData
'LazyData' is specified without a 'data' directory
LazyData
'LazyData' is specified without a 'data' directory
Check History
NOTE 9 OK · 5 NOTE · 0 WARNING · 0 ERROR · 0 FAILURE Mar 30, 2026
CRAN incoming feasibility
Maintainer: ‘Daniel P. Palomar <daniel.p.palomar@gmail.com>’ Package CITATION file contains call(s) to old-style personList() or as.personList(). Please use c() on person objects instead. Package CITATION file contains call(s) to old-style citEntry(). Please use bibentry() instead.
CRAN incoming feasibility
Maintainer: ‘Daniel P. Palomar <daniel.p.palomar@gmail.com>’ Package CITATION file contains call(s) to old-style personList() or as.personList(). Please use c() on person objects instead. Package CITATION file contains call(s) to old-style citEntry(). Please use bibentry() instead.
LazyData
'LazyData' is specified without a 'data' directory
LazyData
'LazyData' is specified without a 'data' directory
LazyData
'LazyData' is specified without a 'data' directory
ERROR 8 OK · 5 NOTE · 0 WARNING · 1 ERROR · 0 FAILURE Mar 10, 2026
CRAN incoming feasibility
Maintainer: ‘Daniel P. Palomar <daniel.p.palomar@gmail.com>’ Package CITATION file contains call(s) to old-style personList() or as.personList(). Please use c() on person objects instead. Package CITATION file contains call(s) to old-style citEntry(). Please use bibentry() instead.
CRAN incoming feasibility
Maintainer: ‘Daniel P. Palomar <daniel.p.palomar@gmail.com>’ Package CITATION file contains call(s) to old-style personList() or as.personList(). Please use c() on person objects instead. Package CITATION file contains call(s) to old-style citEntry(). Please use bibentry() instead.
re-building of vignette outputs
Error(s) in re-building vignettes: --- re-building ‘SparseEigenvectors.Rmd’ using rmarkdown *** caught segfault *** address 0x1f3, cause 'invalid permissions' Traceback: 1: eigen(Sigma, symmetric = TRUE) 2: MASS::mvrnorm(n, rep(0, m), R) 3: eva ...[truncated]... Vignettes(dir = "/Volumes/Builds/packages/sonoma-arm64/results/4.6/sparseEigen.Rcheck/vign_test/sparseEigen", skip = TRUE, ser_elibs = "/Volumes/Temp/tmp/Rtmp8EHwPQ/file38387ea6a224.rds") An irrecoverable exception occurred. R is aborting now ...
LazyData
'LazyData' is specified without a 'data' directory
LazyData
'LazyData' is specified without a 'data' directory
LazyData
'LazyData' is specified without a 'data' directory