Count Regression for Correlated Observations with the Beta-binomial
corncob
is an R
package for modeling relative abundance and testing hypotheses about the effect of covariates on relative abundance. The corncob
methodology was specifically developed for modelling microbial abundances based on high throughput sequencing data, such as 16S or whole-genome sequencing.
To install the corncob
package, use the code below to download the development version from Github.
# install.packages("remotes")
remotes::install_github("statdivlab/corncob")
library(corncob)
Instead of installing corncob to your local system, you can use corncob via the pre-compiled Docker image: quay.io/fhcrc-microbiome/corncob
.
The vignettes demonstrate example usage of all main functions (they go over the same analysis, one with phyloseq
objects and one without phyloseq
objects). Please file an issue if you have a request for a tutorial that is not currently included. You can see the vignette by using the following code:
library(corncob)
# Use this to view the vignette in the corncob HTML help
help(package = "corncob", help_type = "html")
# Use this to view the vignette as an isolated HTML file
utils::browseVignettes(package = "corncob")
Note that R does not allow variable names to start with numbers. Sometimes, when going directly from QIIME2 to phyloseq objects, taxa names will be a large string starting with numbers. To clean these taxa names for use with corncob, use clean_taxa_names(my_phyloseq_object)
, see ?clean_taxa_names
for details.
We additionally have a pkgdown
website that contains pre-built versions of our function documentation, vignette, and a version of the vignette without phyloseq
.
If you use corncob
for your analysis, please cite our manuscript:
Bryan D. Martin, Daniela Witten, and Amy D. Willis. (2020). Modeling microbial abundances and dysbiosis with beta-binomial regression. Annals of Applied Statistics, Volume 14, Number 1, pages 94-115.
An open-access preprint is available on arXiv here.
If you encounter a bug or would like make a change request, please file it as an issue here.