BRCore provides a unified framework for identification and ecological interpretation of core microbiomes across time and space, enhancing robustness and reproducibility in microbiome data analysis.
BRCore provides tools for:
- Rarefaction analysis: Calculate pre-rarefaction metrics
(
add_rarefaction_metrics()) and perform multiple rarefaction (multi_rarefy()) - Core microbiome identification: Identify core microbial taxa using
abundance-occupancy distributions (
identify_core()) - Neutral model fitting: Fit and visualize neutral community models
(
fit_neutral_model(),plot_neutral_model()) - Visualization: Plot rarefaction diagnostics, abundance-occupancy
curves, and core distributions (
plot_rarefaction_metrics(),plot_abundance_occupancy(),plot_core_distribution(),plot_identified_core())
Install the latest stable version of BRCore from CRAN with:
install.packages("BRCore")
Install the development version of BRCore from GitHub with:
# install.packages("pak")
pak::pak("germs-lab/BRCore")
Note: If you don’t have pak installed, you can use devtools
or remotes but you may need to install dependencies manually. pak
handles dependencies automatically.
# For the latest development version with vignettes, use:
# install.packages("devtools")
devtools::install_github("germs-lab/BRCore", build_vignettes = TRUE)
# or using remotes
# install.packages("remotes")
remotes::install_github("germs-lab/BRCore", build_vignettes = TRUE)
Note: Building vignettes requires additional time and dependencies. Use this option only if you need local access to documentation
library(BRCore)
library(phyloseq)
# Load example data
data("bcse", package = "BRCore")
# Add rarefaction metrics
bcse_metrics <- add_rarefaction_metrics(data = bcse)
# Perform multiple rarefaction
bcse_rarefied <- multi_rarefy(
physeq = bcse,
depth_level = 1000,
num_iter = 100,
threads = 4,
set_seed = 7642
)
# Update phyloseq object with rarefied data
bcse_rare <- update_otu_table(physeq = bcse, otu_rare = bcse_rarefied)
# Identify core microbiome
bcse_core <- identify_core(
physeq_obj = bcse_rare,
priority_var = "Crop",
increase_value = 0.02,
seed = 2134
)
# Visualize abundance-occupancy distribution
plot_abundance_occupancy(core_result = bcse_core, core_set = "increase")
# Fit and plot neutral model
bcse_neutral <- fit_neutral_model(
otu_table = bcse_core$otu_table,
core_set = bcse_core$increase_core,
abundance_occupancy = bcse_core$abundance_occupancy
)
plot_neutral_model(bcse_neutral)
For detailed examples and use cases, see the package vignette:
vignette("BRCore-vignette", package = "BRCore")
Contributions to BRCore are welcome! Please see the CONTRIBUTING.md file for guidelines on how to contribute.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.