msPCA: A New R Package for Sparse PCA with Multiple Components

We are happy to share msPCA, an R package for sparse principal component analysis with multiple components, now on CRAN.

Standard PCA produces dense loadings — every component loads on every variable. Sparse PCA restricts each component to a small number of variables, making results easier to interpret. The hard part with multiple components is enforcing non-redundancy: components should not just repeat the same information.

A distinctive feature is explicit control over the non-redundancy definition:

  • feasibilityConstraintType = 0: orthogonal loading vectors (geometric non-redundancy)
  • feasibilityConstraintType = 1: zero pairwise correlation between components (statistical non-redundancy)

Both are enforced with a user-controllable tolerance — something most other sparse PCA packages do not offer.

Package site: https://jeanpauphilet.github.io/msPCA/
CRAN: https://CRAN.R-project.org/package=msPCA
Paper: https://doi.org/10.48550/arXiv.2209.14790

2 Likes