{
  "_id": "6ad754390d12c08e591b8f36",
  "Package": "presto",
  "Title": "Fast Functions for Differential Expression Using Wilcoxon and\nAUC",
  "Version": "1.1.0",
  "Authors@R": "c(\nperson(\"Ilya\", \"Korsunsky\", email = \"ilya.korsunsky@gmail.com\",\nrole = c(\"aut\"), comment = c(ORCID = \"0000-0003-4848-3948\")),\nperson(\"Aparna\", \"Nathan\",\nrole = \"aut\"),\nperson(\"Nghia\", \"Millard\",\nrole = \"aut\", comment = c(ORCID = \"0000-0002-0518-7674\")),\nperson(\"Soumya\", \"Raychaudhuri\",\nrole = c(\"aut\"), comment = c(ORCID = \"0000-0002-1901-8265\")),\nperson(\"Kamil\", \"Slowikowski\", email = \"kslowikowski@gmail.com\",\nrole = c(\"cre\", \"ctb\"), comment = c(ORCID = \"0000-0002-2843-6370\")),\nperson(\"Austin\", \"Hartman\",\nrole = c(\"ctb\"), comment = c(ORCID = \"0000-0001-7278-1852\"))\n)",
  "Description": "Scalable implementation of the Wilcoxon rank sum test and\nthe area under the receiver operating characteristic curve\n(also known as auROC or AUC) statistic. Interfaces to dense and\nsparse matrices, as well as the genomics analysis frameworks\n'Seurat' and 'SingleCellExperiment'.",
  "License": "GPL-3",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.3.3",
  "NeedsCompilation": "yes",
  "VignetteBuilder": "knitr",
  "Config/pak/sysreqs": "libicu-dev",
  "Repository": "https://satijalab.r-universe.dev",
  "Date/Publication": "2026-09-20 20:17:04 UTC",
  "RemoteUrl": "https://github.com/immunogenomics/presto",
  "RemoteRef": "HEAD",
  "RemoteSha": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
  "Packaged": {
    "Date": "2026-10-20 11:20:47 UTC",
    "User": "root"
  },
  "Author": "Ilya Korsunsky [aut] (ORCID: <https://orcid.org/0000-0003-4848-3948>),\nAparna Nathan [aut],\nNghia Millard [aut] (ORCID: <https://orcid.org/0000-0002-0518-7674>),\nSoumya Raychaudhuri [aut] (ORCID:\n<https://orcid.org/0000-0002-1901-8265>),\nKamil Slowikowski [cre, ctb] (ORCID:\n<https://orcid.org/0000-0002-2843-6370>),\nAustin Hartman [ctb] (ORCID: <https://orcid.org/0000-0001-7278-1852>)",
  "Maintainer": "Kamil Slowikowski <kslowikowski@gmail.com>",
  "_user": "satijalab",
  "_type": "src",
  "_file": "presto_1.1.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/438aeccc1f88e4f1147da7118f954b43cfb23610099752ec6c56187e85f2e9cc",
  "_filesize": 213375,
  "_sha256": "438aeccc1f88e4f1147da7118f954b43cfb23610099752ec6c56187e85f2e9cc",
  "_expires": "2027-01-28T11:44:55.000Z",
  "_created": "2026-10-20T11:20:47.000Z",
  "_published": "2026-10-20T11:44:57.457Z",
  "_upstream": "https://github.com/immunogenomics/presto",
  "_status": "success",
  "_maintainer": {
    "name": "Kamil Slowikowski",
    "email": "kslowikowski@gmail.com",
    "login": "slowkow",
    "bluesky": "@slowkow.com",
    "linkedin": "in/kslowikowski",
    "orcid": "0000-0002-2843-6370",
    "description": "Computational biologist. Using transcriptomics to learn about inflammation and cancer.",
    "uuid": 209714
  },
  "_jobs": [
    {
      "job": 118599608495,
      "time": 183,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12260114839"
    },
    {
      "job": 118599608504,
      "time": 200,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12261220539"
    },
    {
      "job": 118599608469,
      "time": 299,
      "config": "linux-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12260609688"
    },
    {
      "job": 118599608712,
      "time": 363,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12261785272"
    },
    {
      "job": 118599608426,
      "time": 175,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "12261528182"
    },
    {
      "job": 118599608465,
      "time": 357,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "12262095295"
    },
    {
      "job": 118599608428,
      "time": 177,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12260684713"
    },
    {
      "job": 118599608443,
      "time": 329,
      "config": "macos-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12261251021"
    },
    {
      "job": 118596494402,
      "time": 473,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12260289143"
    },
    {
      "job": 118599608497,
      "time": 239,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "12261650072"
    },
    {
      "job": 118599608616,
      "time": 316,
      "config": "windows-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12261810122"
    },
    {
      "job": 118599608448,
      "time": 232,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "12260294893"
    },
    {
      "job": 118599608505,
      "time": 134,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "12260731568"
    },
    {
      "job": 118599608605,
      "time": 263,
      "config": "windows-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12261390392"
    },
    {
      "job": 118599608627,
      "time": 405,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "12262025225"
    }
  ],
  "_buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701",
  "_commit": {
    "id": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
    "author": "Kamil Slowikowski <kslowikowski@gmail.com>",
    "committer": "Kamil Slowikowski <kslowikowski@gmail.com>",
    "message": "Rebuild pkgdown site\n",
    "time": 1789935424
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.5.0",
      "role": "Depends"
    },
    {
      "package": "Rcpp",
      "role": "LinkingTo"
    },
    {
      "package": "RcppArmadillo",
      "role": "LinkingTo"
    },
    {
      "package": "Rcpp",
      "role": "Imports"
    },
    {
      "package": "data.table",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "Matrix",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "role": "Suggests"
    },
    {
      "package": "Seurat",
      "role": "Suggests"
    },
    {
      "package": "SingleCellExperiment",
      "role": "Suggests"
    },
    {
      "package": "SummarizedExperiment",
      "role": "Suggests"
    },
    {
      "package": "DelayedArray",
      "role": "Suggests"
    },
    {
      "package": "broom",
      "role": "Suggests"
    },
    {
      "package": "BiocStyle",
      "role": "Suggests"
    },
    {
      "package": "DESeq2",
      "role": "Suggests"
    }
  ],
  "_owner": "immunogenomics",
  "_selfowned": false,
  "_usedby": 1,
  "_updates": [
    {
      "week": "2026-19",
      "n": 1
    },
    {
      "week": "2026-34",
      "n": 19
    },
    {
      "week": "2026-35",
      "n": 10
    },
    {
      "week": "2026-37",
      "n": 7
    },
    {
      "week": "2026-38",
      "n": 4
    }
  ],
  "_tags": [
    {
      "name": "v1.1.0",
      "date": "2026-09-20"
    }
  ],
  "_stars": 219,
  "_contributors": [
    {
      "user": "slowkow",
      "count": 55,
      "uuid": 209714
    },
    {
      "user": "austinhartman",
      "count": 18,
      "uuid": 8409657
    },
    {
      "user": "ilyakorsunsky",
      "count": 6,
      "uuid": 2343994
    },
    {
      "user": "igordot",
      "count": 3,
      "uuid": 6363505
    },
    {
      "user": "innesbre",
      "count": 1,
      "uuid": 7492881
    }
  ],
  "_userbio": {
    "uuid": 8411851,
    "type": "organization",
    "name": "satijalab",
    "followers": 550
  },
  "_downloads": {
    "count": 5362,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/presto"
  },
  "_devurl": "https://github.com/immunogenomics/presto",
  "_searchresults": 1644,
  "_topics": [
    "cpp"
  ],
  "_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/presto.html",
    "extra/readme.html",
    "extra/readme.md"
  ],
  "_realowner": "slowkow",
  "_cranurl": false,
  "_releases": [
    {
      "version": "1.1.0",
      "date": "2026-09-30"
    }
  ],
  "_exports": [
    "%>%",
    "collapse_counts",
    "compute_hash",
    "nnzeroGroups",
    "pseudobulk_deseq2",
    "pseudobulk_one_vs_all",
    "pseudobulk_pairwise",
    "pseudobulk_within",
    "rank_matrix",
    "sumGroups",
    "summarize_dge_pairs",
    "top_markers",
    "top_markers_dds",
    "toy_sce",
    "toy_seurat",
    "wilcoxauc"
  ],
  "_help": [
    {
      "page": "collapse_counts",
      "title": "Collapse a single-cell count matrix into pseudobulks",
      "topics": [
        "collapse_counts"
      ]
    },
    {
      "page": "compute_hash",
      "title": "Compute a unique integer hash for each row of a data.frame",
      "topics": [
        "compute_hash"
      ]
    },
    {
      "page": "nnzeroGroups",
      "title": "Group-wise non-zero counts of a matrix along one axis",
      "topics": [
        "nnzeroGroups",
        "nnzeroGroups.dgCMatrix",
        "nnzeroGroups.matrix"
      ]
    },
    {
      "page": "pseudobulk_deseq2",
      "title": "Pseudobulk differential expression with DESeq2",
      "topics": [
        "pseudobulk_deseq2"
      ]
    },
    {
      "page": "pseudobulk_one_vs_all",
      "title": "Pseudobulk DESeq2: one-vs-all contrasts",
      "topics": [
        "pseudobulk_one_vs_all"
      ]
    },
    {
      "page": "pseudobulk_pairwise",
      "title": "Pseudobulk DESeq2: pairwise contrasts",
      "topics": [
        "pseudobulk_pairwise"
      ]
    },
    {
      "page": "pseudobulk_within",
      "title": "Pseudobulk DESeq2: within-group contrasts",
      "topics": [
        "pseudobulk_within"
      ]
    },
    {
      "page": "rank_matrix",
      "title": "Column-wise tied ranks of a matrix",
      "topics": [
        "rank_matrix",
        "rank_matrix.dgCMatrix",
        "rank_matrix.matrix"
      ]
    },
    {
      "page": "sumGroups",
      "title": "Group-wise sum of a matrix along one axis",
      "topics": [
        "sumGroups",
        "sumGroups.dgCMatrix",
        "sumGroups.matrix"
      ]
    },
    {
      "page": "summarize_dge_pairs",
      "title": "Summarize directional pairwise DGE results",
      "topics": [
        "summarize_dge_pairs"
      ]
    },
    {
      "page": "top_markers",
      "title": "Top markers per group from wilcoxauc results",
      "topics": [
        "top_markers"
      ]
    },
    {
      "page": "top_markers_dds",
      "title": "Top markers per group from pseudobulk DESeq2 results",
      "topics": [
        "top_markers_dds"
      ]
    },
    {
      "page": "toy_sce",
      "title": "Toy SingleCellExperiment object for examples and tests",
      "topics": [
        "toy_sce"
      ]
    },
    {
      "page": "toy_seurat",
      "title": "Toy Seurat object for examples and tests",
      "topics": [
        "toy_seurat"
      ]
    },
    {
      "page": "wilcoxauc",
      "title": "Fast Wilcoxon rank-sum test and auROC across groups",
      "topics": [
        "wilcoxauc",
        "wilcoxauc.default",
        "wilcoxauc.Seurat",
        "wilcoxauc.seurat",
        "wilcoxauc.SingleCellExperiment"
      ]
    }
  ],
  "_readme": "https://github.com/immunogenomics/presto/raw/HEAD/README.md",
  "_rundeps": [
    "cli",
    "cpp11",
    "data.table",
    "dplyr",
    "generics",
    "glue",
    "lattice",
    "lifecycle",
    "magrittr",
    "Matrix",
    "pillar",
    "pkgconfig",
    "purrr",
    "R6",
    "Rcpp",
    "RcppArmadillo",
    "rlang",
    "stringi",
    "stringr",
    "tibble",
    "tidyr",
    "tidyselect",
    "utf8",
    "vctrs",
    "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": "getting-started.Rmd",
      "filename": "getting-started.html",
      "title": "Getting started with presto",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Demo data",
        "Quick start",
        "Result columns",
        "Top markers per cluster",
        "Restricting to a subset of groups",
        "Seurat and SingleCellExperiment",
        "Notes on input types",
        "Session info"
      ],
      "created": "2019-05-07 22:20:27",
      "modified": "2026-09-20 20:16:56",
      "commits": 8
    },
    {
      "source": "pseudobulk.Rmd",
      "filename": "pseudobulk.html",
      "title": "Pseudobulk differential expression with DESeq2",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Why pseudobulk?",
        "Demo data",
        "Step 1: collapse cells to pseudobulks",
        "Step 2: one-vs-all DESeq2",
        "Step 3: top markers per cluster",
        "Step 4: pairwise cluster contrasts",
        "Step 5: within-cluster Case vs Control",
        "Tips",
        "Session info"
      ],
      "created": "2026-08-20 14:32:12",
      "modified": "2026-09-20 20:16:56",
      "commits": 3
    }
  ],
  "_score": 10.063823988074654,
  "_indexed": false,
  "_nocasepkg": "presto",
  "_universes": [
    "satijalab"
  ],
  "_indexurl": "https://cran.r-universe.dev/presto",
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.1.0",
      "date": "2026-10-20T11:23:22.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/e04c344a8ce9ea90ed98b28123889d72b5a091e28f935d35d31f2b9244e4d510",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.1.0",
      "date": "2026-10-20T11:23:40.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/5e81045c319752d317bb704e8e1e71a99aa2a96590ce799a25f10e1a01266f74",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.1.0",
      "date": "2026-10-20T11:25:21.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/771a2b554a31336902f546de53bf4a3752ec9ec38d8867db53133bff3f7e15f0",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.1.0",
      "date": "2026-10-20T11:26:06.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/ea502a66a1b77c092dd6d31d13d3a7319887769dfbc3d7811d72052b240ad19e",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.1.0",
      "date": "2026-10-20T11:40:21.000Z",
      "arch": "aarch64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/96478eb404f03656dc42224878781d25840b7deb7bebe80f8a3b6cd025e39529",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.1.0",
      "date": "2026-10-20T11:27:22.000Z",
      "arch": "x86_64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/d2942706f70f12d2b4f7aa3c150047b4fc0edb361f396f66ec429e903841b619",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.1.0",
      "date": "2026-10-20T11:43:09.000Z",
      "arch": "aarch64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/3762a6ef98da3eb384a11ce6904621e7e742728c43313f619469b5672704ac90",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.1.0",
      "date": "2026-10-20T11:25:21.000Z",
      "arch": "x86_64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/665906a1bfda51fbaf940734aaa55c075b60502136256940c6734554c4b6f42f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.1.0",
      "date": "2026-10-20T11:25:11.000Z",
      "arch": "emscripten",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/24cb429e04727cdf7e3531195446dd2399b9ee1a288143a8b0cdba5dd9cb33c4",
      "status": "success",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-10-20T11:25:08.000Z",
      "arch": "aarch64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/53e46179fd30072ad008826df82b9b39a87a7f288aa420146a5b8ece6dc299de",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-10-20T11:22:39.000Z",
      "arch": "x86_64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/7ce960c1815672b4626658e54bfbdfc826fc36df59069727e0191d1488d26625",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-10-20T11:22:21.000Z",
      "arch": "x86_64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/31e166c535e72b8d26702ede1019ea9f106824ea1309115c4bcf6b9ad9207412",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-10-20T11:24:14.000Z",
      "arch": "aarch64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/7c3539981741a4f061aa1521ad1fd3b2c93f2bce7a80ebbfcfadc3be573df912",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-10-20T11:26:17.000Z",
      "arch": "x86_64",
      "commit": "b5df6ee6097eb62522f2e557aa93ac21bab2d05f",
      "fileid": "https://r2.ropensci.org/d804b56bc2699c36b80a5b551167bcf5ba03c2affc5cc719b4d10f22e3bd6719",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/satijalab/actions/runs/39413367701"
    }
  ]
}