{
  "_id": "6ad09cbc576abc75bd5cd9a8",
  "Type": "Package",
  "Package": "pcpr",
  "Title": "Principal Component Pursuit for Environmental Epidemiology",
  "Version": "1.0.0.9000",
  "Authors@R": "c(\nperson(\"Lawrence G.\", \"Chillrud\", , \"lawrencechillrud@gmail.com\", role = c(\"aut\", \"cre\", \"cph\"),\ncomment = c(ORCID = \"0000-0003-0727-0161\")),\nperson(\"Jaime\", \"Benavides\", role = \"aut\",\ncomment = c(ORCID = \"0000-0002-1851-5155\")),\nperson(\"Elizabeth A.\", \"Gibson\", role = \"aut\",\ncomment = c(ORCID = \"0000-0001-5119-5133\")),\nperson(\"Junhui\", \"Zhang\", role = \"aut\",\ncomment = c(ORCID = \"0009-0008-5922-1058\")),\nperson(\"Jingkai\", \"Yan\", role = \"aut\",\ncomment = c(ORCID = \"0000-0002-2094-2092\")),\nperson(\"John N.\", \"Wright\", role = \"aut\"),\nperson(\"Jeff\", \"Goldsmith\", role = \"aut\"),\nperson(\"Marianthi-Anna\", \"Kioumourtzoglou\", role = \"aut\",\ncomment = c(ORCID = \"0000-0001-5710-4992\")),\nperson(\"Columbia University\", role = \"fnd\",\ncomment = c(ROR = \"00hj8s172\"))\n)",
  "Description": "Implementation of the pattern recognition technique\nPrincipal Component Pursuit tailored to environmental health\ndata, as described in Gibson et al (2022)\n<doi:10.1289/EHP10479>.",
  "License": "GPL (>= 3)",
  "URL": "https://columbia-prime.github.io/pcpr/,\nhttps://github.com/Columbia-PRIME/pcpr",
  "BugReports": "https://github.com/Columbia-PRIME/pcpr/issues",
  "VignetteBuilder": "knitr",
  "Encoding": "UTF-8",
  "LazyData": "true",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.3.2",
  "Repository": "https://columbia-prime.r-universe.dev",
  "Date/Publication": "2025-04-02 19:17:47 UTC",
  "RemoteUrl": "https://github.com/columbia-prime/pcpr",
  "RemoteRef": "HEAD",
  "RemoteSha": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-15 09:13:18 UTC",
    "User": "root"
  },
  "Author": "Lawrence G. Chillrud [aut, cre, cph] (ORCID:\n<https://orcid.org/0000-0003-0727-0161>),\nJaime Benavides [aut] (ORCID: <https://orcid.org/0000-0002-1851-5155>),\nElizabeth A. Gibson [aut] (ORCID:\n<https://orcid.org/0000-0001-5119-5133>),\nJunhui Zhang [aut] (ORCID: <https://orcid.org/0009-0008-5922-1058>),\nJingkai Yan [aut] (ORCID: <https://orcid.org/0000-0002-2094-2092>),\nJohn N. Wright [aut],\nJeff Goldsmith [aut],\nMarianthi-Anna Kioumourtzoglou [aut] (ORCID:\n<https://orcid.org/0000-0001-5710-4992>),\nColumbia University [fnd] (ROR: <https://ror.org/00hj8s172>)",
  "Maintainer": "Lawrence G. Chillrud <lawrencechillrud@gmail.com>",
  "_user": "columbia-prime",
  "_type": "src",
  "_file": "pcpr_1.0.0.9000.tar.gz",
  "_fileid": "https://r2.ropensci.org/f26bb0e184dfedc6c222f5b4bcb146bece00c2b0a2cdd0c938fed5386a0c1b6e",
  "_filesize": 2929307,
  "_sha256": "f26bb0e184dfedc6c222f5b4bcb146bece00c2b0a2cdd0c938fed5386a0c1b6e",
  "_expires": "2027-01-23T09:28:26.000Z",
  "_created": "2026-10-15T09:13:18.000Z",
  "_published": "2026-10-15T09:28:28.173Z",
  "_buildurl": "https://github.com/r-universe/columbia-prime/actions/runs/38710879183",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 116343307614,
      "time": 124,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11961490401"
    },
    {
      "job": 116343307726,
      "time": 122,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11961620057"
    },
    {
      "job": 116343307794,
      "time": 171,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11961437797"
    },
    {
      "job": 116343307769,
      "time": 183,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11960534151"
    },
    {
      "job": 116341770777,
      "time": 220,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11960651493"
    },
    {
      "job": 116343307602,
      "time": 100,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11961195953"
    },
    {
      "job": 116343307740,
      "time": 71,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11960736721"
    },
    {
      "job": 116343307645,
      "time": 78,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11961320643"
    },
    {
      "job": 116343307649,
      "time": 95,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11960318288"
    }
  ],
  "_upstream": "https://github.com/columbia-prime/pcpr",
  "_commit": {
    "id": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
    "author": "lawrence-chillrud <chili@u.northwestern.edu>",
    "committer": "lawrence-chillrud <chili@u.northwestern.edu>",
    "message": "Addressing issues #17, #18, #23. Issue #16 was fixed in previous commit but forgot to highlight. Also updating badges.\n",
    "time": 1743621467
  },
  "_maintainer": {
    "name": "Lawrence G. Chillrud",
    "email": "lawrencechillrud@gmail.com",
    "login": "lawrence-chillrud",
    "description": "PhD Candidate in Electrical Engineering at Northwestern University. Interested in ML/AI for use in precision medicine & public health.",
    "uuid": 61637679,
    "orcid": "0000-0003-0727-0161"
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.5.0",
      "role": "Depends"
    },
    {
      "package": "checkmate",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "foreach",
      "role": "Imports"
    },
    {
      "package": "furrr",
      "role": "Imports"
    },
    {
      "package": "future",
      "role": "Imports"
    },
    {
      "package": "magrittr",
      "role": "Imports"
    },
    {
      "package": "progressr",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "tidyselect",
      "role": "Imports"
    },
    {
      "package": "GGally",
      "role": "Suggests"
    },
    {
      "package": "ggplot2",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "lubridate",
      "role": "Suggests"
    },
    {
      "package": "metR",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "tidyr",
      "role": "Suggests"
    }
  ],
  "_owner": "columbia-prime",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [],
  "_tags": [],
  "_topics": [
    "dimensionality-reduction",
    "environmental-health",
    "environmental-mixtures",
    "epidemiology",
    "machine-learning",
    "pattern-recognition",
    "public-health",
    "statistical-modeling"
  ],
  "_stars": 7,
  "_contributors": [
    {
      "user": "lizzyagibson",
      "count": 84,
      "uuid": 32719036
    },
    {
      "user": "lawrence-chillrud",
      "count": 62,
      "uuid": 61637679
    }
  ],
  "_userbio": {
    "uuid": 69913359,
    "type": "organization",
    "name": "Columbia PRIME",
    "followers": 0,
    "description": "Adapting PCP to environmental health data"
  },
  "_downloads": {
    "count": 340,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/pcpr"
  },
  "_devurl": "https://github.com/columbia-prime/pcpr",
  "_pkgdown": "https://columbia-prime.github.io/pcpr/",
  "_searchresults": 18,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/pcpr.html",
    "extra/readme.html",
    "extra/readme.md"
  ],
  "_homeurl": "https://github.com/columbia-prime/pcpr",
  "_realowner": "columbia-prime",
  "_cranurl": true,
  "_releases": [
    {
      "version": "1.0.0",
      "date": "2025-03-27"
    }
  ],
  "_exports": [
    "get_pcp_defaults",
    "grid_search_cv",
    "hard_threshold",
    "impute_matrix",
    "matrix_rank",
    "proj_rank_r",
    "root_pcp",
    "rrmc",
    "sim_data",
    "sim_lod",
    "sim_na",
    "sing",
    "sparsity"
  ],
  "_datasets": [
    {
      "name": "queens",
      "title": "Daily chemical concentrations of 26 PM2.5 species from Queens, NYC (2001-2021)",
      "object": "queens",
      "class": [
        "tbl_df",
        "tbl",
        "data.frame"
      ],
      "fields": [
        "Date",
        "Al",
        "NH4",
        "As",
        "Ba",
        "Br",
        "Cd",
        "Ca",
        "Cl",
        "Cr",
        "Cu",
        "EC",
        "Fe",
        "Pb",
        "Mg",
        "Mn",
        "Ni",
        "OC",
        "K",
        "Se",
        "Si",
        "Na",
        "S",
        "Ti",
        "NO3",
        "V",
        "Zn"
      ],
      "rows": 2443,
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "get_pcp_defaults",
      "title": "Retrieve default PCP parameter settings for given matrix",
      "topics": [
        "get_pcp_defaults"
      ]
    },
    {
      "page": "grid_search_cv",
      "title": "Cross-validated grid search for PCP models",
      "topics": [
        "grid_search_cv"
      ]
    },
    {
      "page": "hard_threshold",
      "title": "Hard-thresholding operator",
      "topics": [
        "hard_threshold"
      ]
    },
    {
      "page": "impute_matrix",
      "title": "Impute missing values in given matrix",
      "topics": [
        "impute_matrix"
      ]
    },
    {
      "page": "matrix_rank",
      "title": "Estimate rank of a given matrix",
      "topics": [
        "matrix_rank"
      ]
    },
    {
      "page": "proj_rank_r",
      "title": "Project matrix to rank r",
      "topics": [
        "proj_rank_r"
      ]
    },
    {
      "page": "queens",
      "title": "Daily chemical concentrations of 26 PM2.5 species from Queens, NYC (2001-2021)",
      "topics": [
        "queens"
      ]
    },
    {
      "page": "root_pcp",
      "title": "Square root principal component pursuit (convex PCP)",
      "topics": [
        "root_pcp"
      ]
    },
    {
      "page": "rrmc",
      "title": "Rank-based robust matrix completion (non-convex PCP)",
      "topics": [
        "rrmc"
      ]
    },
    {
      "page": "sim_data",
      "title": "Simulate simple mixtures data",
      "topics": [
        "sim_data"
      ]
    },
    {
      "page": "sim_lod",
      "title": "Simulate limit of detection data",
      "topics": [
        "sim_lod"
      ]
    },
    {
      "page": "sim_na",
      "title": "Simulate random missingness in a given matrix",
      "topics": [
        "sim_na"
      ]
    },
    {
      "page": "sing",
      "title": "Compute singular values of given matrix",
      "topics": [
        "sing"
      ]
    },
    {
      "page": "sparsity",
      "title": "Estimate sparsity of given matrix",
      "topics": [
        "sparsity"
      ]
    }
  ],
  "_pkglogo": "https://github.com/columbia-prime/pcpr/raw/HEAD/man/figures/logo.png",
  "_readme": "https://github.com/columbia-prime/pcpr/raw/HEAD/README.md",
  "_rundeps": [
    "backports",
    "checkmate",
    "cli",
    "codetools",
    "digest",
    "dplyr",
    "foreach",
    "furrr",
    "future",
    "generics",
    "globals",
    "glue",
    "iterators",
    "lifecycle",
    "listenv",
    "magrittr",
    "parallelly",
    "pillar",
    "pkgconfig",
    "progressr",
    "purrr",
    "R6",
    "rlang",
    "tibble",
    "tidyselect",
    "utf8",
    "vctrs",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "pcp-applied.Rmd",
      "filename": "pcp-applied.html",
      "title": "Air pollution source apportionment with PCP",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Preprocessing",
        "Exploring the raw data",
        "Data standardization",
        "Principal component pursuit",
        "Model selection",
        "Grid search for parameter tuning",
        "Running PCP",
        "The recovered L matrix",
        "The recovered S matrix",
        "PCP and NMF for source apportionment",
        "PCP-NMF Loadings",
        "Variance Explained",
        "Loadings replotted",
        "PCP-NMF Scores",
        "Conclusion",
        "References"
      ],
      "created": "2025-03-20 06:02:26",
      "modified": "2025-04-02 19:17:47",
      "commits": 8
    },
    {
      "source": "pcp-quickstart.Rmd",
      "filename": "pcp-quickstart.html",
      "title": "Quickstart: applying PCP to a simulated environmental mixture",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Simulating data",
        "Model selection",
        "Grid search for parameter tuning",
        "Running PCP",
        "Benchmarking with PCA",
        "Evaluating PCP against the ground truth",
        "After PCP"
      ],
      "created": "2025-03-20 06:02:26",
      "modified": "2025-04-02 19:17:47",
      "commits": 8
    },
    {
      "source": "theory-crash-course.Rmd",
      "filename": "theory-crash-course.html",
      "title": "Theory crash course",
      "engine": "knitr::rmarkdown",
      "headings": [
        "PCP modeling overview",
        "The low-rank matrix",
        "The sparse matrix",
        "Extensions for environmental health data",
        "Missing value functionality",
        "Leveraging potential limit of detection (LOD) information",
        "Non-negativity constraint on the estimated L matrix",
        "Convex vs. non-convex PCP",
        "Convex PCP",
        "Non-convex PCP",
        "PCP parameters",
        "Intuition behind lambda, mu, and eta",
        "Theoretically optimal parameters",
        "Empirically optimal parameters",
        "Tuning parameters with grid_search_cv()",
        "Cross-validation procedure",
        "Best practices for $\\xi$ and $K$",
        "Interpretation of results",
        "Coded example analyses",
        "References"
      ],
      "created": "2025-03-23 00:20:16",
      "modified": "2025-03-25 18:37:39",
      "commits": 5
    }
  ],
  "_score": 5.276461804173244,
  "_indexed": true,
  "_nocasepkg": "pcpr",
  "_universes": [
    "columbia-prime",
    "lawrence-chillrud"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.0.0.9000",
      "date": "2026-10-15T09:15:23.000Z",
      "distro": "resolute",
      "commit": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
      "fileid": "https://r2.ropensci.org/4c3a8cb25a0094f2b41befc158f3878d7a28c2becebdf9280a465fa7fb5dc66b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/columbia-prime/actions/runs/38710879183"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.0.0.9000",
      "date": "2026-10-15T09:15:22.000Z",
      "distro": "resolute",
      "commit": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
      "fileid": "https://r2.ropensci.org/8f45803b7fe94813024b54f205e1a1ce0242f7f451ea73192e9fef61627827db",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/columbia-prime/actions/runs/38710879183"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.0.0.9000",
      "date": "2026-10-15T09:27:10.000Z",
      "commit": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
      "fileid": "https://r2.ropensci.org/6ed51f0504e2a490efc07edc71e58ee95029a780893b3ea7208d45c459915a34",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/columbia-prime/actions/runs/38710879183"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.0.0.9000",
      "date": "2026-10-15T09:27:00.000Z",
      "commit": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
      "fileid": "https://r2.ropensci.org/b43d29e2dba1929f99ff922adf9b62735abb90d25bbf7b38f1ae53b60691046a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/columbia-prime/actions/runs/38710879183"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.0.0.9000",
      "date": "2026-10-15T09:15:16.000Z",
      "commit": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
      "fileid": "https://r2.ropensci.org/a1c0dc1eb04713ee648e07ac05d0b205fb029f6decec124d6d3975beedeeb18d",
      "status": "success",
      "buildurl": "https://github.com/r-universe/columbia-prime/actions/runs/38710879183"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.0.0.9000",
      "date": "2026-10-15T09:14:30.000Z",
      "commit": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
      "fileid": "https://r2.ropensci.org/fec4f334efe95a435b3ab56aaed4e8f6803f61502576d886557c6439e04a19f8",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/columbia-prime/actions/runs/38710879183"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.0.0.9000",
      "date": "2026-10-15T09:14:34.000Z",
      "commit": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
      "fileid": "https://r2.ropensci.org/2d0773a6563f34562449335dbe2a489c881028b16bec592f809201e95a97b96d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/columbia-prime/actions/runs/38710879183"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.0.0.9000",
      "date": "2026-10-15T09:14:52.000Z",
      "commit": "d4543329c8b4bacb9baffb43c40d3a54de6246a2",
      "fileid": "https://r2.ropensci.org/c8807d4d8b514f402f12cb9f6b809a439b3ab02bbe5e70b36b24a2d7fda4c1d3",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/columbia-prime/actions/runs/38710879183"
    }
  ]
}