dppca: Differentially Private Principal Component Analysis and Visualization

Provides tools for differentially private principal component analysis (PCA) and visualization. Includes private principal component directions, scree and proportion of variance explained (PVE) estimates, and two-dimensional private score histograms with synthetic sampled points. Supports additive and sparse histogram mechanisms, group-wise score visualizations, and optional non-private comparisons. An integrated workflow produces loading plots, scree plots, score plots, variable plots, and biplots from shared private PCA estimates. An interactive 'shiny' application is also provided. Private direction estimation is based on Kim and Jung (2025) <doi:10.1002/sam.70053>. Private scree estimation draws on Dwork and Roth (2014) <doi:10.1561/0400000042>, Ramsay and Spicker (2025) <doi:10.48550/arXiv.2501.14095>, and Yu, Ren and Zhou (2024) <doi:10.3150/23-BEJ1706>. Private score frames use unbounded quantile mechanisms from Durfee (2023) <doi:10.52202/075280-3394>. Private score histograms use methods related to Wasserman and Zhou (2010) <doi:10.1198/jasa.2009.tm08651> and Karwa and Vadhan (2018) <doi:10.4230/LIPIcs.ITCS.2018.44>.

Version: 1.0.0
Depends: R (≥ 4.3.0)
Imports: ggplot2, ggrepel, graphics, grDevices, grid, patchwork, Rcpp, Rdpack, rlang, stats, VGAM
LinkingTo: Rcpp
Suggests: knitr, rmarkdown, shiny
Published: 2026-11-10
DOI: 10.32614/CRAN.package.dppca
Author: Yejin Jo [aut, cre], Minwoo Kim [aut], Sungkyu Jung [aut]
Maintainer: Yejin Jo <yejinjo0220 at gmail.com>
BugReports: https://github.com/yejinjo0220/dppca/issues
License: MIT + file LICENSE
Copyright: see file COPYRIGHTS
URL: https://github.com/yejinjo0220/dppca, https://yejinjo0220.github.io/dppca/
NeedsCompilation: yes
Materials: README, NEWS
CRAN checks: dppca results

Documentation:

Reference manual: dppca.html , dppca.pdf
Vignettes: Algorithms (source, R code)
Differentially Private PC Directions (source, R code)
Differentially Private PC Scores (source, R code)
Differentially Private Eigenvalues (source, R code)
Differentially Private PCA Visualizations (source, R code)
Principal Component Analysis (source, R code)
Interactive Shiny App (source, R code)
DP PCA Visualization (source, R code)
Getting Started with dppca (source, R code)
DP Loading Plots (source, R code)
DP Score Plots (source, R code)
DP Scree Plots (source, R code)

Downloads:

Package source: dppca_1.0.0.tar.gz
Windows binaries: r-devel: dppca_0.1.0.zip, r-release: dppca_1.0.0.zip, r-oldrel: dppca_1.0.0.zip
macOS binaries: r-release (arm64): dppca_1.0.0.tgz, r-oldrel (arm64): dppca_1.0.0.tgz, r-release (x86_64): dppca_0.1.0.tgz, r-oldrel (x86_64): dppca_1.0.0.tgz
Old sources: dppca archive

Linking:

Please use the canonical form https://CRAN.R-project.org/package=dppca to link to this page.