{
  "_id": "6ae250a88d250e7ad09eece7",
  "Package": "dppca",
  "Title": "Differentially Private Principal Component Analysis and\nVisualization",
  "Version": "0.2.0",
  "Authors@R": "c(\nperson(\"Yejin\", \"Jo\", email = \"yejinjo0220@gmail.com\", role = c(\"aut\", \"cre\")),\nperson(\"Minwoo\", \"Kim\", email = \"mwkim.stat@gmail.com\", role = c(\"aut\")),\nperson(\"Sungkyu\", \"Jung\", email = \"sungkyu@snu.ac.kr\", role = c(\"aut\"))\n)",
  "Description": "Provides tools for differentially private principal\ncomponent analysis (PCA) and visualization. Includes private\nprincipal component directions, scree and proportion of\nvariance explained (PVE) estimates, and two-dimensional private\nscore histograms with synthetic sampled points. Supports\nadditive and sparse histogram mechanisms, group-wise score\nvisualizations, and optional non-private comparisons. An\nintegrated workflow produces loading plots, scree plots, score\nplots, variable plots, and biplots from shared private PCA\nestimates. An interactive 'shiny' application is also provided.\nPrivate direction estimation is based on Kim and Jung (2025)\n<doi:10.1002/sam.70053>. Private scree estimation draws on\nDwork and Roth (2014) <doi:10.1561/0400000042>, Ramsay and\nSpicker (2025) <doi:10.48550/arXiv.2501.14095>, and Yu, Ren and\nZhou (2024) <doi:10.3150/23-BEJ1706>. Private score frames use\nunbounded quantile mechanisms from Durfee (2023)\n<doi:10.52202/075280-3394>. Private score histograms use\nmethods related to Wasserman and Zhou (2010)\n<doi:10.1198/jasa.2009.tm08651> and Karwa and Vadhan (2018)\n<doi:10.4230/LIPIcs.ITCS.2018.44>.",
  "License": "MIT + file LICENSE",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.3.3",
  "VignetteBuilder": "knitr",
  "RdMacros": "Rdpack",
  "LazyData": "true",
  "LazyDataCompression": "xz",
  "URL": "https://github.com/yejinjo0220/dppca,\nhttps://yejinjo0220.github.io/dppca/",
  "BugReports": "https://github.com/yejinjo0220/dppca/issues",
  "Config/testthat/edition": "3",
  "Repository": "https://yejinjo0220.r-universe.dev",
  "Date/Publication": "2026-10-28 16:08:39 UTC",
  "RemoteUrl": "https://github.com/yejinjo0220/dppca",
  "RemoteRef": "HEAD",
  "RemoteSha": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-10-28 19:19:41 UTC",
    "User": "root"
  },
  "Author": "Yejin Jo [aut, cre],\nMinwoo Kim [aut],\nSungkyu Jung [aut]",
  "Maintainer": "Yejin Jo <yejinjo0220@gmail.com>",
  "_user": "yejinjo0220",
  "_type": "src",
  "_file": "dppca_0.2.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/c379c9e4ecfa89b927afbb2da4dffb33ee9ff313e4f400b8dd490b453c830d40",
  "_filesize": 4655404,
  "_sha256": "c379c9e4ecfa89b927afbb2da4dffb33ee9ff313e4f400b8dd490b453c830d40",
  "_expires": "2027-02-05T19:44:38.000Z",
  "_created": "2026-10-28T19:19:41.000Z",
  "_published": "2026-10-28T19:44:40.762Z",
  "_upstream": "https://github.com/yejinjo0220/dppca",
  "_status": "success",
  "_maintainer": {
    "name": "Yejin Jo",
    "email": "yejinjo0220@gmail.com",
    "login": "yejinjo0220",
    "description": "",
    "uuid": 247485823
  },
  "_jobs": [
    {
      "job": 123045663071,
      "time": 135,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12845052723"
    },
    {
      "job": 123045662976,
      "time": 180,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12845655847"
    },
    {
      "job": 123045662945,
      "time": 132,
      "config": "linux-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12844058055"
    },
    {
      "job": 123045663074,
      "time": 167,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12844337657"
    },
    {
      "job": 123045663055,
      "time": 127,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "12846161802"
    },
    {
      "job": 123045663138,
      "time": 246,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "12845369806"
    },
    {
      "job": 123045662936,
      "time": 100,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12844644730"
    },
    {
      "job": 123045663003,
      "time": 373,
      "config": "macos-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12846770698"
    },
    {
      "job": 123042344637,
      "time": 370,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12844991779"
    },
    {
      "job": 123045662959,
      "time": 107,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "12843838442"
    },
    {
      "job": 123045663043,
      "time": 226,
      "config": "windows-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12844747913"
    },
    {
      "job": 123045663259,
      "time": 151,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12843898554"
    },
    {
      "job": 123045663104,
      "time": 116,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "12844289383"
    },
    {
      "job": 123045663115,
      "time": 227,
      "config": "windows-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12844299797"
    },
    {
      "job": 123045663016,
      "time": 123,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12845121401"
    }
  ],
  "_buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821",
  "_commit": {
    "id": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
    "author": "Minwoo Kim <45740420+minwooKim1717@users.noreply.github.com>",
    "committer": "Minwoo Kim <45740420+minwooKim1717@users.noreply.github.com>",
    "message": "Update online documentation and methodology\n",
    "time": 1793203719
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.3.0",
      "role": "Depends"
    },
    {
      "package": "Rcpp",
      "role": "LinkingTo"
    },
    {
      "package": "ggplot2",
      "role": "Imports"
    },
    {
      "package": "ggrepel",
      "role": "Imports"
    },
    {
      "package": "graphics",
      "role": "Imports"
    },
    {
      "package": "grDevices",
      "role": "Imports"
    },
    {
      "package": "grid",
      "role": "Imports"
    },
    {
      "package": "patchwork",
      "role": "Imports"
    },
    {
      "package": "Rcpp",
      "role": "Imports"
    },
    {
      "package": "Rdpack",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "VGAM",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "shiny",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    }
  ],
  "_owner": "yejinjo0220",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2025-49",
      "n": 14
    },
    {
      "week": "2025-52",
      "n": 1
    },
    {
      "week": "2026-01",
      "n": 3
    },
    {
      "week": "2026-02",
      "n": 3
    },
    {
      "week": "2026-11",
      "n": 2
    },
    {
      "week": "2026-15",
      "n": 3
    },
    {
      "week": "2026-19",
      "n": 8
    },
    {
      "week": "2026-20",
      "n": 4
    },
    {
      "week": "2026-21",
      "n": 21
    },
    {
      "week": "2026-22",
      "n": 2
    },
    {
      "week": "2026-24",
      "n": 1
    },
    {
      "week": "2026-33",
      "n": 6
    },
    {
      "week": "2026-34",
      "n": 2
    },
    {
      "week": "2026-35",
      "n": 2
    },
    {
      "week": "2026-36",
      "n": 1
    },
    {
      "week": "2026-38",
      "n": 2
    },
    {
      "week": "2026-42",
      "n": 5
    },
    {
      "week": "2026-44",
      "n": 5
    }
  ],
  "_tags": [
    {
      "name": "v0.1.0",
      "date": "2026-05-31"
    }
  ],
  "_stars": 2,
  "_contributors": [
    {
      "user": "yejinjo0220",
      "count": 66,
      "uuid": 247485823
    },
    {
      "user": "minwookim1717",
      "count": 22,
      "uuid": 45740420
    },
    {
      "user": "yejin02220",
      "count": 3,
      "uuid": 209908662
    }
  ],
  "_userbio": {
    "uuid": 247485823,
    "type": "user",
    "name": "yejinjo0220",
    "followers": 0
  },
  "_downloads": {
    "count": 308,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/dppca"
  },
  "_devurl": "https://github.com/yejinjo0220/dppca",
  "_pkgdown": "https://yejinjo0220.github.io/dppca/",
  "_searchresults": 0,
  "_topics": [
    "cpp"
  ],
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/dppca.html",
    "extra/manual.pdf",
    "extra/readme.html",
    "extra/readme.md",
    "LICENSE"
  ],
  "_homeurl": "https://github.com/yejinjo0220/dppca",
  "_realowner": "yejinjo0220",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2026-06-04"
    }
  ],
  "_exports": [
    "clipped_control",
    "dp_loading",
    "dp_pca",
    "dp_score",
    "dp_scree",
    "dppca_app",
    "huber_control",
    "loading_plot_control",
    "pmwm_control",
    "privacy_control",
    "sampling_control",
    "score_plot_control",
    "scree_plot_control"
  ],
  "_datasets": [
    {
      "name": "gau",
      "title": "Five Gaussian Cluster Dataset",
      "object": "gau",
      "class": [
        "data.frame"
      ],
      "fields": [
        "V1",
        "V2",
        "V3",
        "V4",
        "V5",
        "V6",
        "V7",
        "V8",
        "V9",
        "V10",
        "V11",
        "V12",
        "V13",
        "V14",
        "V15",
        "V16",
        "V17",
        "V18",
        "V19",
        "V20"
      ],
      "rows": 1000,
      "table": true,
      "tojson": true
    },
    {
      "name": "gau_g",
      "title": "Five Gaussian Cluster Dataset with Group Labels",
      "object": "gau_g",
      "class": [
        "data.frame"
      ],
      "fields": [
        "V1",
        "V2",
        "V3",
        "V4",
        "V5",
        "V6",
        "V7",
        "V8",
        "V9",
        "V10",
        "V11",
        "V12",
        "V13",
        "V14",
        "V15",
        "V16",
        "V17",
        "V18",
        "V19",
        "V20",
        "group"
      ],
      "rows": 1000,
      "table": true,
      "tojson": true
    },
    {
      "name": "vowel",
      "title": "Vowel Recognition Dataset",
      "object": "vowel",
      "class": [
        "data.frame"
      ],
      "fields": [
        "Split",
        "Speaker",
        "Sex",
        "F0",
        "F1",
        "F2",
        "F3",
        "F4",
        "F5",
        "F6",
        "F7",
        "F8",
        "F9",
        "Class"
      ],
      "rows": 990,
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "clipped_control",
      "title": "Control options for clipped scree estimation",
      "topics": [
        "clipped_control"
      ]
    },
    {
      "page": "dp_loading",
      "title": "Estimate differentially private PC directions",
      "topics": [
        "dp_loading",
        "print.dp_loading",
        "print.summary.dp_loading",
        "summary.dp_loading"
      ]
    },
    {
      "page": "dp_pca",
      "title": "Estimate shared PCA quantities once",
      "topics": [
        "dp_pca",
        "print.dp_pca",
        "print.summary.dp_pca",
        "summary.dp_pca"
      ]
    },
    {
      "page": "dp_score",
      "title": "Differentially private score histograms",
      "topics": [
        "dp_score",
        "print.dp_score",
        "print.dp_score_group",
        "print.summary.dp_score",
        "summary.dp_score",
        "summary.dp_score_group"
      ]
    },
    {
      "page": "dp_scree",
      "title": "Differentially private scree values",
      "topics": [
        "dp_scree",
        "print.dp_scree",
        "print.summary.dp_scree",
        "summary.dp_scree"
      ]
    },
    {
      "page": "dppca_app",
      "title": "Launch the dppca Shiny app",
      "topics": [
        "dppca_app"
      ]
    },
    {
      "page": "gau",
      "title": "Five Gaussian Cluster Dataset",
      "topics": [
        "gau"
      ]
    },
    {
      "page": "gau_g",
      "title": "Five Gaussian Cluster Dataset with Group Labels",
      "topics": [
        "gau_g"
      ]
    },
    {
      "page": "huber_control",
      "title": "Control options for Huber scree estimation",
      "topics": [
        "huber_control"
      ]
    },
    {
      "page": "loading_plot_control",
      "title": "Control loading plot appearance",
      "topics": [
        "loading_plot_control"
      ]
    },
    {
      "page": "plot.dp_loading",
      "title": "Plot stored private PC directions",
      "topics": [
        "plot.dp_loading",
        "plot.dp_loading_plot",
        "print.dp_loading_plot",
        "summary.dp_loading_plot"
      ]
    },
    {
      "page": "plot.dp_pca",
      "title": "Plot an integrated PCA fit",
      "topics": [
        "plot.dp_pca"
      ]
    },
    {
      "page": "plot.dp_score",
      "title": "Plot a stored private score histogram",
      "topics": [
        "plot.dp_score",
        "plot.dp_score_plot",
        "print.dp_score_plot",
        "summary.dp_score_plot"
      ]
    },
    {
      "page": "plot.dp_score_group",
      "title": "Plot stored group-wise private score histograms",
      "topics": [
        "plot.dp_score_group",
        "plot.dp_score_plot_group",
        "print.dp_score_plot_group",
        "summary.dp_score_plot_group"
      ]
    },
    {
      "page": "plot.dp_scree",
      "title": "Plot stored private scree estimates",
      "topics": [
        "plot.dp_scree"
      ]
    },
    {
      "page": "pmwm_control",
      "title": "Control options for private modified winsorized scree estimation",
      "topics": [
        "pmwm_control"
      ]
    },
    {
      "page": "privacy_control",
      "title": "Allocate privacy budgets for shared PCA estimation",
      "topics": [
        "privacy_control"
      ]
    },
    {
      "page": "sampling_control",
      "title": "Control options for synthetic score sampling",
      "topics": [
        "sampling_control"
      ]
    },
    {
      "page": "score_plot_control",
      "title": "Control options for score plots",
      "topics": [
        "score_plot_control"
      ]
    },
    {
      "page": "scree_plot_control",
      "title": "Control options for scree and PVE plots",
      "topics": [
        "scree_plot_control"
      ]
    },
    {
      "page": "vowel",
      "title": "Vowel Recognition Dataset",
      "topics": [
        "vowel"
      ]
    }
  ],
  "_readme": "https://github.com/yejinjo0220/dppca/raw/HEAD/README.md",
  "_rundeps": [
    "cli",
    "cpp11",
    "farver",
    "ggplot2",
    "ggrepel",
    "glue",
    "gtable",
    "isoband",
    "labeling",
    "lifecycle",
    "patchwork",
    "R6",
    "rbibutils",
    "RColorBrewer",
    "Rcpp",
    "Rdpack",
    "rlang",
    "S7",
    "scales",
    "vctrs",
    "VGAM",
    "viridisLite",
    "withr"
  ],
  "_sysdeps": [
    {
      "shlib": "libstdc++",
      "package": "libstdc++6",
      "source": "gcc",
      "version": "16-20260322-1ubuntu1",
      "name": "c++",
      "homepage": "http://gcc.gnu.org/",
      "description": "GNU Standard C++ Library v3"
    }
  ],
  "_vignettes": [
    {
      "source": "algorithms.Rmd",
      "filename": "algorithms.html",
      "title": "Algorithms",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Algorithm 1: Private and robust estimator for (m_2)",
        "Algorithm 2: Unbounded DP upper-quantile estimator",
        "Algorithm 3: Additive DP histogram",
        "Algorithm 4: Sparse DP histogram",
        "Algorithm 5: Group-wise additive DP histogram",
        "Algorithm 6: Group-wise sparse DP histogram",
        "References"
      ],
      "created": "2026-05-05 14:49:51",
      "modified": "2026-10-28 16:08:39",
      "commits": 5
    },
    {
      "source": "method-dp-scree.Rmd",
      "filename": "method-dp-scree.html",
      "title": "Differentially Private Eigenvalues",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. DP eigenvalue estimation",
        "$$(\\widetilde{\\lambda}_1,\\ldots,\\widetilde{\\lambda}_k)",
        "2. Clipped mean",
        "3. Private modified winsorized mean (PMWM)",
        "3.1. Allocation of pair rows",
        "3.2. Private quantiles and cutoff bounds",
        "$$\\zeta",
        "$$L_\\ell^",
        "\\mathcal Q_",
        "$$L_\\ell",
        "\\min{b,\\max{a,L_\\ell^{\\mathrm{priv}}}},\\qquadU_\\ell",
        "3.3. Winsorized mean and Gaussian perturbation",
        "3.4. Privacy allocation and tuning choices",
        "$$(\\varepsilon_M,\\delta_M)",
        "4. Huber mean",
        "4.1. Huber loss and score",
        "4.2. Private scale and Huber thresholds",
        "$$\\varepsilon_",
        "\\frac",
        "$$\\tau_\\ell",
        "4.3. Noisy gradient descent",
        "5. Nonnegative scree and PVE",
        "6. DP scree/PVE plots in dppca",
        "References"
      ],
      "created": "2026-10-28 16:08:39",
      "modified": "2026-10-28 16:08:39",
      "commits": 1
    },
    {
      "source": "method-dp-loading.Rmd",
      "filename": "method-dp-loading.html",
      "title": "Differentially Private PC Directions",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Spherical Kendall matrix and PC directions",
        "Translation invariance",
        "2. DP PC directions",
        "3. DP loading plots in dppca",
        "References"
      ],
      "created": "2026-10-28 16:08:39",
      "modified": "2026-10-28 16:08:39",
      "commits": 1
    },
    {
      "source": "method-dp-score.Rmd",
      "filename": "method-dp-score.html",
      "title": "Differentially Private PC Scores",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Two-dimensional PC scores",
        "2. Private plotting frame",
        "2.1. Private coordinate medians",
        "2.2. Private radial quantile and square frame",
        "3. Histogram grid and sensitivity",
        "4. Private histogram estimators",
        "4.1. Additive Gaussian histogram",
        "4.2. Stability-based sparse histogram",
        "5. Privacy budget allocation",
        "6. Synthetic score sampling",
        "7. Group-wise private score histograms",
        "8.1. Display centering",
        "$$c_\\ell^",
        "References"
      ],
      "created": "2026-10-28 16:08:39",
      "modified": "2026-10-28 16:08:39",
      "commits": 1
    },
    {
      "source": "method-dp-visualization.Rmd",
      "filename": "method-dp-visualization.html",
      "title": "Differentially Private PCA Visualizations",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. What is estimated privately?",
        "2. Privacy budget and shared estimation",
        "3. Five DP PCA Visualization",
        "3.1. DP variable plot (correlation-style coordinates)",
        "$$\\operatorname{Cor}(X_{\\cdot j},S_{\\cdot\\ell})",
        "$$\\widetilde{\\Sigma}_k",
        "$$\\widetilde{\\sigma}_{j,k}^2",
        "(\\widetilde",
        "$$\\widetilde",
        "$$R_j^",
        "$$|R_j^{\\mathrm{DP}}|_2^2",
        "\\widetilde",
        "3.2. DP biplot",
        "$$\\widetilde{d}_\\ell",
        "$$G_{i\\ell}^{\\mathrm{DP}}(\\alpha)",
        "\\frac{s_{i\\ell}^*-c_\\ell^{\\mathrm{disp}}}{\\widetilde{d}\\ell^\\alpha},\\qquadH{j\\ell}^{\\mathrm{DP}}(\\alpha)",
        "For the two selected components, the rows $G_i^{\\mathrm{DP}}(\\alpha)",
        "\\left(G_{ia}^{\\mathrm{DP}}(\\alpha),G_{ib}^{\\mathrm{DP}}(\\alpha)\\right)$represent synthetic observations, while $H_j^{\\mathrm{DP}}(\\alpha)",
        "Let$$r_G",
        "Q_{0.9}\\left(\\left{\\left|G_i^{\\mathrm{DP}}(\\alpha)",
        "$$r_H",
        "$$\\gamma",
        "4. Summary",
        "References and further reading"
      ],
      "created": "2026-10-28 16:08:39",
      "modified": "2026-10-28 16:08:39",
      "commits": 1
    },
    {
      "source": "tutorials-loading-plots.Rmd",
      "filename": "tutorials-loading-plots.html",
      "title": "DP Loading Plots",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Load the example data",
        "2. Set the privacy budget and estimate PC directions",
        "3. Inspect the result",
        "4. Plot the result",
        "4.1. Vector plot",
        "4.2. Point and heatmap plots",
        "5. Select PCs and variables",
        "6. Customize the appearance"
      ],
      "created": "2026-10-27 02:04:27",
      "modified": "2026-10-28 16:08:39",
      "commits": 2
    },
    {
      "source": "tutorials-dp-visualization.Rmd",
      "filename": "tutorials-dp-visualization.html",
      "title": "DP PCA Visualization",
      "engine": "knitr::rmarkdown",
      "headings": [
        "What you will make",
        "1. Load the vowel data",
        "2. Create the privacy allocation",
        "3. Fit DP PCA analysis",
        "Main arguments of dp_pca()",
        "4. Inspect the results",
        "5. Create all five displays",
        "6. Reuse and export the results"
      ],
      "created": "2026-10-27 02:04:27",
      "modified": "2026-10-28 16:08:39",
      "commits": 2
    },
    {
      "source": "tutorials-score-plots.Rmd",
      "filename": "tutorials-score-plots.html",
      "title": "DP Score Plots",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Load the example data",
        "2. Set the privacy budget and estimate a score histogram",
        "2.1. Additive and sparse methods",
        "3. Inspect and plot the result",
        "3.1. Read the fit and stored estimates",
        "3.2. Show a private histogram",
        "3.3. Draw synthetic score points",
        "4. Customize the plot",
        "5. Group-wise private score histograms",
        "5.1. Fit a private histogram for each group",
        "5.2. Plot a group histogram overlay"
      ],
      "created": "2026-10-27 02:04:27",
      "modified": "2026-10-28 16:08:39",
      "commits": 2
    },
    {
      "source": "tutorials-scree-plots.Rmd",
      "filename": "tutorials-scree-plots.html",
      "title": "DP Scree Plots",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Load the example data",
        "2. Set the privacy budget and estimate scree values",
        "3. Inspect and plot the result",
        "4. Choose a method and its tuning parameters",
        "Clipped mean",
        "Private modified winsorized mean (PMWM)",
        "Huber mean",
        "5. Compare multiple methods and account for releases",
        "6. Reusing Private PC Directions",
        "7. Customize the plot"
      ],
      "created": "2026-10-27 02:04:27",
      "modified": "2026-10-28 16:08:39",
      "commits": 2
    },
    {
      "source": "tutorials-getting-started.Rmd",
      "filename": "tutorials-getting-started.html",
      "title": "Getting Started with dppca",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Choose a starting point",
        "1. Install and load the package",
        "2. Prepare your input data",
        "3. Explore the Example Datasets",
        "3.1. Gaussian data",
        "3.2. Vowel data",
        "4. Set and Allocate the Privacy Budget",
        "4.1. Default privacy budget allocation",
        "4.2. Customize the budget allocation",
        "4.3. Specify individual component budgets",
        "5. Next steps"
      ],
      "created": "2026-10-27 02:04:27",
      "modified": "2026-10-28 16:08:39",
      "commits": 2
    },
    {
      "source": "shiny-app.Rmd",
      "filename": "shiny-app.html",
      "title": "Interactive Shiny App",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Available analyses",
        "2. Getting started",
        "3. Data and comparison options",
        "4. Run the app locally"
      ],
      "created": "2026-10-27 03:12:32",
      "modified": "2026-10-28 16:08:39",
      "commits": 2
    },
    {
      "source": "method-pca-background.Rmd",
      "filename": "method-pca-background.html",
      "title": "Principal Component Analysis",
      "engine": "knitr::rmarkdown",
      "headings": [
        "1. Introduction",
        "2. Population PCA",
        "Let $\\xi\\in\\mathbb{R}^p$ be a random vector with mean $\\mu=E[\\xi]$ and covariance matrix $\\Sigma",
        "3. Sample PCA",
        "[\\widehat \\Sigma",
        "3.1 Directions",
        "[\\widehat \\Sigma \\widehat v_\\ell",
        "3.2 Eigenvalues",
        "The eigenvalues of $\\widehat \\Sigma$ represent the sample variances along the corresponding PC directions. In particular,[\\widehat\\lambda_\\ell",
        "[\\operatorname{PVE}_\\ell",
        "3.3 Scores",
        "where the $\\ell$th PC score of observation $i$ is $s_",
        "4. PCA visualizations",
        "4.1 Loading plot",
        "4.2 Scree plot",
        "4.3 Score plot",
        "4.4 Variable plot (correlation circle)",
        "A variable plot displays the correlations between the original variables and the PC scores. Let (\\widehat \\sigma_j=\\sqrt{\\widehat \\Sigma_{jj}}) denote the sample standard deviation of variable (j). For (\\widehat \\sigma>0) and (\\widehat\\lambda_\\ell>0), the sample correlation between variable (j) and the (\\ell)th PC scores is[\\operatorname{Cor}(X_{\\cdot j},S_{\\cdot\\ell})",
        "Since $|R_j|_2^2",
        "4.5 Biplot",
        "Summary of PCA visualizations",
        "References"
      ],
      "created": "2026-10-28 16:08:39",
      "modified": "2026-10-28 16:08:39",
      "commits": 1
    }
  ],
  "_score": 6.635483746814912,
  "_indexed": true,
  "_nocasepkg": "dppca",
  "_universes": [
    "yejinjo0220"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.2.0",
      "date": "2026-10-28T19:21:56.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/85edd001b4d6d93e81714b48f61b33cfa7d81668c4826aa73f3071efee4b34c7",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.2.0",
      "date": "2026-10-28T19:22:26.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/3ec7973159c5959ba8ea29e333f1abeec1b7c9e8ed6aeaa945e27c2326050a76",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.2.0",
      "date": "2026-10-28T19:21:54.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/4158c060b1cb7aaf87c00d5826d67de4dd6ad5cc044d32558dd28834e61a7645",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.2.0",
      "date": "2026-10-28T19:22:20.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/0428ad1358f5db1969dd6b3360ef77ef4a61c9099cf86d03e57650396403cbef",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.2.0",
      "date": "2026-10-28T19:41:27.000Z",
      "arch": "aarch64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/9570e9f421be68bb2088e37e8cc04031bfd317f4c8806103de6534f7114ac6be",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.2.0",
      "date": "2026-10-28T19:43:11.000Z",
      "arch": "x86_64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/e6b87fcd595bad11bafe57e86dcb12ffcf94baa1a9711145f1f24a364b02d764",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.2.0",
      "date": "2026-10-28T19:37:25.000Z",
      "arch": "aarch64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/88a139dd98da22ed4acfd25acdf536a38154c36c9c27bf6524c3c751f79ee990",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.2.0",
      "date": "2026-10-28T19:37:44.000Z",
      "arch": "x86_64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/e6eb4028181763730a480678f5155c969a9390d1523eadd2200f84d23800e8b1",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.2.0",
      "date": "2026-10-28T19:21:49.000Z",
      "arch": "emscripten",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/81f7275427f7fe48e27bfe451e719a52d4516e66e41ba944ffb2df0b5caaa3fb",
      "status": "success",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-10-28T19:23:07.000Z",
      "arch": "aarch64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/130988893b8a3dc83d212621bb314ee1fd5cd7f7a7fbcb0f4694db3298d574ff",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-10-28T19:20:57.000Z",
      "arch": "x86_64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/d79e055c43f26988d3afbcd501d941139954f40c34f22ac91ef67c469881ecfe",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-10-28T19:21:00.000Z",
      "arch": "x86_64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/86b5982c534f9caa98fdbb4e63b62df20979ea96fca1a82a77082810404a43ed",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-10-28T19:23:08.000Z",
      "arch": "aarch64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/bd61cd6a7037b7ef9eeb1b2b9b5fc28888f50480affcd1488f286ce4eda5b512",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-10-28T19:21:07.000Z",
      "arch": "x86_64",
      "commit": "a92415120823bde7015b6dc7fa52891dd3c4ea72",
      "fileid": "https://r2.ropensci.org/500464421ab89bcb77e01f315f7d8de728ac807b07b29fd6dc7d9c89e3b00c2f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/yejinjo0220/actions/runs/40752376821"
    }
  ]
}