{
  "_id": "6a4b66c6a6574ff277f9a8b8",
  "Package": "ebnm",
  "Encoding": "UTF-8",
  "Type": "Package",
  "Version": "1.1-42",
  "Date": "2025-10-08",
  "Title": "Solve the Empirical Bayes Normal Means Problem",
  "Authors@R": "c(person(\"Jason\", \"Willwerscheid\", role = \"aut\"),\nperson(\"Matthew\", \"Stephens\", role = \"aut\"),\nperson(\"Peter\", \"Carbonetto\", role = c(\"aut\", \"cre\"),\nemail = \"peter.carbonetto@gmail.com\"),\nperson(\"Andrew\", \"Goldstein\", role = \"ctb\"),\nperson(\"Yusha\", \"Liu\", role = \"ctb\"))",
  "URL": "https://github.com/stephenslab/ebnm",
  "BugReports": "https://github.com/stephenslab/ebnm/issues",
  "Description": "Provides simple, fast, and stable functions to fit the\nnormal means model using empirical Bayes. For available models\nand details, see function ebnm(). Our JSS article,\nWillwerscheid, Carbonetto, and Stephens (2025)\n<doi:10.18637/jss.v114.i03>, provides a detailed introduction\nto the package.",
  "License": "GPL (>=3)",
  "NeedsCompilation": "no",
  "RoxygenNote": "7.3.2",
  "VignetteBuilder": "knitr",
  "LazyData": "true",
  "Repository": "https://stephenslab.r-universe.dev",
  "Date/Publication": "2025-10-08 17:48:55 UTC",
  "RemoteUrl": "https://github.com/stephenslab/ebnm",
  "RemoteRef": "HEAD",
  "RemoteSha": "825edf1e308af9f3e594a5482300b9fb99793129",
  "Packaged": {
    "Date": "2026-07-06 08:23:04 UTC",
    "User": "root"
  },
  "Author": "Jason Willwerscheid [aut],\nMatthew Stephens [aut],\nPeter Carbonetto [aut, cre],\nAndrew Goldstein [ctb],\nYusha Liu [ctb]",
  "Maintainer": "Peter Carbonetto <peter.carbonetto@gmail.com>",
  "_user": "stephenslab",
  "_type": "src",
  "_file": "ebnm_1.1-42.tar.gz",
  "_fileid": "https://r2.ropensci.org/2c40132b0e8671cee4ff082366d132c2d9079bc80798bf311c590c85786cb1df",
  "_filesize": 1314333,
  "_sha256": "2c40132b0e8671cee4ff082366d132c2d9079bc80798bf311c590c85786cb1df",
  "_expires": "2026-10-14T08:26:44.000Z",
  "_created": "2026-07-06T08:23:04.000Z",
  "_published": "2026-07-06T08:26:46.375Z",
  "_jobs": [
    {
      "job": 85326450138,
      "time": 173,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8103503437"
    },
    {
      "job": 85326450180,
      "time": 167,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8103501431"
    },
    {
      "job": 85326450147,
      "time": 123,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8103485553"
    },
    {
      "job": 85326450140,
      "time": 108,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8103480012"
    },
    {
      "job": 85325767367,
      "time": 241,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8103438141"
    },
    {
      "job": 85326450124,
      "time": 147,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "8103494416"
    },
    {
      "job": 85326450134,
      "time": 151,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8103495843"
    },
    {
      "job": 85326450131,
      "time": 137,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8103491043"
    },
    {
      "job": 85326450118,
      "time": 161,
      "config": "windows-release",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8103499202"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/stephenslab/actions/runs/28777768450",
  "_status": "success",
  "_upstream": "https://github.com/stephenslab/ebnm",
  "_commit": {
    "id": "825edf1e308af9f3e594a5482300b9fb99793129",
    "author": "Peter Carbonetto <peter.carbonetto@gmail.com>",
    "committer": "Peter Carbonetto <peter.carbonetto@gmail.com>",
    "message": "Added error message for when horseshoe package is not installed.\n",
    "time": 1759945735
  },
  "_maintainer": {
    "name": "Peter Carbonetto",
    "email": "peter.carbonetto@gmail.com",
    "login": "pcarbo",
    "description": "Research Assistant Prof, Human Genetics, U. Chicago; previously, Staff Scientist at Ancestry, postdoc & HFSP fellow at U. Chicago, & Ph.D. at UBC",
    "uuid": 1503904
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.3.0",
      "role": "Depends"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "ashr",
      "role": "Imports"
    },
    {
      "package": "mixsqp",
      "role": "Imports"
    },
    {
      "package": "truncnorm",
      "role": "Imports"
    },
    {
      "package": "trust",
      "role": "Imports"
    },
    {
      "package": "deconvolveR",
      "role": "Imports"
    },
    {
      "package": "magrittr",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "ggplot2",
      "role": "Imports"
    },
    {
      "package": "testthat",
      "role": "Suggests"
    },
    {
      "package": "REBayes",
      "role": "Suggests"
    },
    {
      "package": "horseshoe",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "cowplot",
      "role": "Suggests"
    },
    {
      "package": "mcmc",
      "role": "Suggests"
    },
    {
      "package": "numDeriv",
      "role": "Suggests"
    }
  ],
  "_owner": "stephenslab",
  "_selfowned": true,
  "_usedby": 2,
  "_updates": [
    {
      "week": "2025-36",
      "n": 6
    },
    {
      "week": "2025-41",
      "n": 4
    }
  ],
  "_tags": [
    {
      "name": "1.1-42",
      "date": "2025-10-08"
    }
  ],
  "_stars": 13,
  "_contributors": [
    {
      "user": "willwerscheid",
      "count": 634,
      "uuid": 23383067
    },
    {
      "user": "pcarbo",
      "count": 111,
      "uuid": 1503904
    },
    {
      "user": "stephens999",
      "count": 34,
      "uuid": 1800389
    },
    {
      "user": "andrewg3311",
      "count": 12,
      "uuid": 8594159
    }
  ],
  "_userbio": {
    "uuid": 5939770,
    "type": "organization",
    "name": "Stephens lab",
    "followers": 118,
    "description": "Research in statistical and computational methods for genetics at the University of Chicago."
  },
  "_downloads": {
    "count": 602,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/ebnm"
  },
  "_devurl": "https://github.com/stephenslab/ebnm",
  "_searchresults": 281,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/ebnm.html",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/stephenslab/ebnm",
  "_realowner": "stephenslab",
  "_cranurl": true,
  "_releases": [
    {
      "version": "1.0-9",
      "date": "2022-03-08"
    },
    {
      "version": "1.1-2",
      "date": "2023-10-12"
    },
    {
      "version": "1.1-38",
      "date": "2025-09-05"
    },
    {
      "version": "1.1-42",
      "date": "2025-10-10"
    }
  ],
  "_exports": [
    "ebnm",
    "ebnm_add_sampler",
    "ebnm_ash",
    "ebnm_check_fn",
    "ebnm_deconvolver",
    "ebnm_flat",
    "ebnm_generalized_binary",
    "ebnm_group",
    "ebnm_horseshoe",
    "ebnm_normal",
    "ebnm_normal_scale_mixture",
    "ebnm_npmle",
    "ebnm_output_all",
    "ebnm_output_default",
    "ebnm_point_exponential",
    "ebnm_point_laplace",
    "ebnm_point_mass",
    "ebnm_point_normal",
    "ebnm_scale_normalmix",
    "ebnm_scale_npmle",
    "ebnm_scale_unimix",
    "ebnm_unimodal",
    "ebnm_unimodal_nonnegative",
    "ebnm_unimodal_nonpositive",
    "ebnm_unimodal_symmetric",
    "gammamix",
    "horseshoe",
    "laplacemix"
  ],
  "_datasets": [
    {
      "name": "wOBA",
      "title": "2022 MLB wOBA Data",
      "object": "wOBA",
      "class": [
        "data.frame"
      ],
      "fields": [
        "FanGraphsID",
        "Name",
        "Team",
        "PA",
        "x",
        "s"
      ],
      "rows": 688,
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "coef.ebnm",
      "title": "Extract posterior means from a fitted EBNM model",
      "topics": [
        "coef.ebnm"
      ]
    },
    {
      "page": "confint.ebnm",
      "title": "Obtain credible intervals using a fitted EBNM model",
      "topics": [
        "confint.ebnm"
      ]
    },
    {
      "page": "ebnm",
      "title": "Solve the EBNM problem",
      "topics": [
        "ebnm",
        "ebnm_output_all",
        "ebnm_output_default"
      ]
    },
    {
      "page": "ebnm_add_sampler",
      "title": "Add sampler to an ebnm_object",
      "topics": [
        "ebnm_add_sampler"
      ]
    },
    {
      "page": "ebnm_ash",
      "title": "Solve the EBNM problem using an ash family of distributions",
      "topics": [
        "ebnm_ash"
      ]
    },
    {
      "page": "ebnm_check_fn",
      "title": "Check a custom ebnm function",
      "topics": [
        "ebnm_check_fn"
      ]
    },
    {
      "page": "ebnm_deconvolver",
      "title": "Solve the EBNM problem using the \"deconvolveR\" family of distributions",
      "topics": [
        "ebnm_deconvolver"
      ]
    },
    {
      "page": "ebnm_flat",
      "title": "Solve the EBNM problem using a flat prior",
      "topics": [
        "ebnm_flat"
      ]
    },
    {
      "page": "ebnm_generalized_binary",
      "title": "Solve the EBNM problem using generalized binary priors",
      "topics": [
        "ebnm_generalized_binary"
      ]
    },
    {
      "page": "ebnm_group",
      "title": "Solve the EBNM problem for grouped data",
      "topics": [
        "ebnm_group"
      ]
    },
    {
      "page": "ebnm_horseshoe",
      "title": "Solve the EBNM problem using horseshoe priors",
      "topics": [
        "ebnm_horseshoe"
      ]
    },
    {
      "page": "ebnm_normal",
      "title": "Solve the EBNM problem using normal priors",
      "topics": [
        "ebnm_normal"
      ]
    },
    {
      "page": "ebnm_normal_scale_mixture",
      "title": "Solve the EBNM problem using scale mixtures of normals",
      "topics": [
        "ebnm_normal_scale_mixture"
      ]
    },
    {
      "page": "ebnm_npmle",
      "title": "Solve the EBNM problem using the family of all distributions",
      "topics": [
        "ebnm_npmle"
      ]
    },
    {
      "page": "ebnm_point_exponential",
      "title": "Solve the EBNM problem using point-exponential priors",
      "topics": [
        "ebnm_point_exponential"
      ]
    },
    {
      "page": "ebnm_point_laplace",
      "title": "Solve the EBNM problem using point-Laplace priors",
      "topics": [
        "ebnm_point_laplace"
      ]
    },
    {
      "page": "ebnm_point_mass",
      "title": "Solve the EBNM problem using a point mass prior",
      "topics": [
        "ebnm_point_mass"
      ]
    },
    {
      "page": "ebnm_point_normal",
      "title": "Solve the EBNM problem using point-normal priors",
      "topics": [
        "ebnm_point_normal"
      ]
    },
    {
      "page": "ebnm_scale_normalmix",
      "title": "Set scale parameter for scale mixtures of normals",
      "topics": [
        "ebnm_scale_normalmix"
      ]
    },
    {
      "page": "ebnm_scale_npmle",
      "title": "Set scale parameter for NPMLE and deconvolveR prior family",
      "topics": [
        "ebnm_scale_npmle"
      ]
    },
    {
      "page": "ebnm_scale_unimix",
      "title": "Set scale parameter for nonparametric unimodal prior families",
      "topics": [
        "ebnm_scale_unimix"
      ]
    },
    {
      "page": "ebnm_unimodal",
      "title": "Solve the EBNM problem using unimodal distributions",
      "topics": [
        "ebnm_unimodal"
      ]
    },
    {
      "page": "ebnm_unimodal_nonnegative",
      "title": "Solve the EBNM problem using unimodal nonnegative distributions",
      "topics": [
        "ebnm_unimodal_nonnegative"
      ]
    },
    {
      "page": "ebnm_unimodal_nonpositive",
      "title": "Solve the EBNM problem using unimodal nonpositive distributions",
      "topics": [
        "ebnm_unimodal_nonpositive"
      ]
    },
    {
      "page": "ebnm_unimodal_symmetric",
      "title": "Solve the EBNM problem using symmetric unimodal distributions",
      "topics": [
        "ebnm_unimodal_symmetric"
      ]
    },
    {
      "page": "fitted.ebnm",
      "title": "Extract posterior estimates from a fitted EBNM model",
      "topics": [
        "fitted.ebnm"
      ]
    },
    {
      "page": "gammamix",
      "title": "Constructor for gammamix class",
      "topics": [
        "gammamix"
      ]
    },
    {
      "page": "horseshoe",
      "title": "Constructor for horseshoe class",
      "topics": [
        "horseshoe"
      ]
    },
    {
      "page": "laplacemix",
      "title": "Constructor for laplacemix class",
      "topics": [
        "laplacemix"
      ]
    },
    {
      "page": "logLik.ebnm",
      "title": "Extract the log likelihood from a fitted EBNM model",
      "topics": [
        "logLik.ebnm"
      ]
    },
    {
      "page": "nobs.ebnm",
      "title": "Get the number of observations used to fit an EBNM model",
      "topics": [
        "nobs.ebnm"
      ]
    },
    {
      "page": "plot.ebnm",
      "title": "Plot an ebnm object",
      "topics": [
        "plot.ebnm"
      ]
    },
    {
      "page": "predict.ebnm",
      "title": "Use the estimated prior from a fitted EBNM model to solve the EBNM problem for new data",
      "topics": [
        "predict.ebnm"
      ]
    },
    {
      "page": "print.ebnm",
      "title": "Print an ebnm object",
      "topics": [
        "print.ebnm"
      ]
    },
    {
      "page": "print.summary.ebnm",
      "title": "Print a summary.ebnm object",
      "topics": [
        "print.summary.ebnm"
      ]
    },
    {
      "page": "quantile.ebnm",
      "title": "Obtain posterior quantiles using a fitted EBNM model",
      "topics": [
        "quantile.ebnm"
      ]
    },
    {
      "page": "residuals.ebnm",
      "title": "Calculate residuals for a fitted EBNM model",
      "topics": [
        "residuals.ebnm"
      ]
    },
    {
      "page": "simulate.ebnm",
      "title": "Sample from the posterior of a fitted EBNM model",
      "topics": [
        "simulate.ebnm"
      ]
    },
    {
      "page": "summary.ebnm",
      "title": "Summarize an ebnm object",
      "topics": [
        "summary.ebnm"
      ]
    },
    {
      "page": "vcov.ebnm",
      "title": "Extract posterior variances from a fitted EBNM model",
      "topics": [
        "vcov.ebnm"
      ]
    },
    {
      "page": "wOBA",
      "title": "2022 MLB wOBA Data",
      "topics": [
        "wOBA"
      ]
    }
  ],
  "_readme": "https://github.com/stephenslab/ebnm/raw/HEAD/README.md",
  "_rundeps": [
    "ashr",
    "cli",
    "cpp11",
    "deconvolveR",
    "dplyr",
    "etrunct",
    "farver",
    "generics",
    "ggplot2",
    "glue",
    "gtable",
    "invgamma",
    "irlba",
    "isoband",
    "labeling",
    "lattice",
    "lifecycle",
    "magrittr",
    "Matrix",
    "mixsqp",
    "pillar",
    "pkgconfig",
    "R6",
    "RColorBrewer",
    "Rcpp",
    "RcppArmadillo",
    "rlang",
    "S7",
    "scales",
    "SQUAREM",
    "tibble",
    "tidyselect",
    "truncnorm",
    "trust",
    "utf8",
    "vctrs",
    "viridisLite",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "baseball.Rmd",
      "filename": "baseball.html",
      "title": "An analysis of weighted on-base averages using the ebnm package",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The \"wOBA\" data set",
        "The \"ebnm\" function",
        "Comparing different priors",
        "Reanalyzing the data using a nonparametric prior",
        "Background on the \"weighted on-base average\"",
        "Session information",
        "References"
      ],
      "created": "2024-02-15 16:49:24",
      "modified": "2024-03-13 22:10:09",
      "commits": 11
    },
    {
      "source": "extending_ebnm.Rmd",
      "filename": "extending_ebnm.html",
      "title": "Extending ebnm with custom ebnm-style functions",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The scaled-t prior family",
        "Overview of the implementation process",
        "Step 1: Define the prior family class",
        "Step 2: Implement the optimization function",
        "(Optional) Include gradients in the optimization",
        "Step 3: Implement the posterior summary function",
        "Step 4: Put it all together",
        "Step 5: Verify the EBNM function",
        "Step 6: Use the new EBNM function to analyze a data set",
        "Session information"
      ],
      "created": "2024-03-13 20:22:18",
      "modified": "2025-09-04 14:42:55",
      "commits": 25
    },
    {
      "source": "shrink_intro.Rmd",
      "filename": "shrink_intro.html",
      "title": "Introduction to the empirical Bayes normal means model via shrinkage estimation",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The normal means model and empirical Bayes",
        "An illustration: shrinkage estimation",
        "Session information",
        "References"
      ],
      "created": "2024-02-12 17:42:42",
      "modified": "2025-09-04 14:42:55",
      "commits": 10
    }
  ],
  "_score": 8.295043432034886,
  "_indexed": true,
  "_nocasepkg": "ebnm",
  "_universes": [
    "stephenslab",
    "pcarbo"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.1-42",
      "date": "2026-07-06T08:25:32.000Z",
      "distro": "resolute",
      "commit": "825edf1e308af9f3e594a5482300b9fb99793129",
      "fileid": "https://r2.ropensci.org/c4a3d11c8288bbb826143fd14b780fa9d757200285384fcc3ac6bc91ba9e7463",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/stephenslab/actions/runs/28777768450"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.1-42",
      "date": "2026-07-06T08:25:26.000Z",
      "distro": "resolute",
      "commit": "825edf1e308af9f3e594a5482300b9fb99793129",
      "fileid": "https://r2.ropensci.org/c21ad2954b478c40a8add8d014f0001004cedfc46061b30614c13363162ded9f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/stephenslab/actions/runs/28777768450"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.1-42",
      "date": "2026-07-06T08:24:49.000Z",
      "commit": "825edf1e308af9f3e594a5482300b9fb99793129",
      "fileid": "https://r2.ropensci.org/d0768631193ab9bacff57b96f54e31ca71ad0782b3ec2769180c4c6ebb7d32c6",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/stephenslab/actions/runs/28777768450"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.1-42",
      "date": "2026-07-06T08:24:45.000Z",
      "commit": "825edf1e308af9f3e594a5482300b9fb99793129",
      "fileid": "https://r2.ropensci.org/52a1dfe1d06bb1eeedca404d143c618ad815ea898c576821545d083ea880202e",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/stephenslab/actions/runs/28777768450"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.1-42",
      "date": "2026-07-06T08:25:59.000Z",
      "commit": "825edf1e308af9f3e594a5482300b9fb99793129",
      "fileid": "https://r2.ropensci.org/ab860bfe532c8e93a707e756ab079c80a9b8c67d54e2d999670c1f515d512069",
      "status": "success",
      "buildurl": "https://github.com/r-universe/stephenslab/actions/runs/28777768450"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.1-42",
      "date": "2026-07-06T08:24:55.000Z",
      "commit": "825edf1e308af9f3e594a5482300b9fb99793129",
      "fileid": "https://r2.ropensci.org/03af9b059c72538822ca296538f7a5a44f36025b3a01c571088d0a5caccf0823",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/stephenslab/actions/runs/28777768450"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.1-42",
      "date": "2026-07-06T08:24:40.000Z",
      "commit": "825edf1e308af9f3e594a5482300b9fb99793129",
      "fileid": "https://r2.ropensci.org/95571b17d08fccdb3143e48c51c769d4b88180614bd5ce1b802e281fe7a9a959",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/stephenslab/actions/runs/28777768450"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.1-42",
      "date": "2026-07-06T08:25:11.000Z",
      "commit": "825edf1e308af9f3e594a5482300b9fb99793129",
      "fileid": "https://r2.ropensci.org/fd172a6d5dfa66bccd6d2e64794deca3cfe75f79dcd60f3e384825ccded372aa",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/stephenslab/actions/runs/28777768450"
    }
  ]
}