Introduction
MicrobiomeStat is a comprehensive R package designed for advanced longitudinal microbiome and multi-omics data analysis. It provides a complete toolkit for:
- Cross-sectional studies: Single time point analysis
- Paired samples: Before-after comparisons
- Longitudinal studies: Multiple time points tracking
Installation
You can install MicrobiomeStat from CRAN:
install.packages("MicrobiomeStat")
Or get the development version from GitHub:
# install.packages("devtools")
devtools::install_github("cafferychen777/MicrobiomeStat")
Quick Start
Basic Analysis Workflow
1. Alpha Diversity Analysis
# Calculate alpha diversity
alpha.obj <- mStat_calculate_alpha_diversity(
peerj32.obj$feature.tab,
alpha.name = c("shannon", "observed_species")
)
# Visualize alpha diversity
generate_alpha_boxplot_single(
data.obj = peerj32.obj,
alpha.obj = alpha.obj,
alpha.name = "shannon",
subject.var = "subject",
time.var = "time",
t.level = "2",
group.var = "group",
strata.var = "sex"
)
2. Beta Diversity Analysis
# Calculate beta diversity
beta.obj <- mStat_calculate_beta_diversity(
data.obj = peerj32.obj,
dist.name = c("BC", "Jaccard")
)
# Visualize beta diversity using PCoA
generate_beta_ordination_single(
data.obj = peerj32.obj,
dist.obj = beta.obj,
pc.obj = NULL,
subject.var = "subject",
time.var = "time",
t.level = "2",
group.var = "group",
strata.var = "sex",
dist.name = "BC"
)
Data Import from Other Formats
MicrobiomeStat can import data from various microbiome analysis platforms:
# From phyloseq
# data.obj <- mStat_convert_phyloseq_to_data_obj(phyloseq.obj)
# From QIIME2
# data.obj <- mStat_import_qiime2_as_data_obj(
# otu.qza = "table.qza",
# taxa.qza = "taxonomy.qza",
# sam.tab = "metadata.txt"
# )
# From DADA2
# data.obj <- mStat_import_dada2_as_data_obj(
# seq.tab = seqtab,
# tax.tab = taxtab,
# sam.tab = metadata
# )
Key Features
1. Comprehensive Statistical Methods
- LinDA: Linear models for differential abundance analysis
- Mixed-effects models: For longitudinal data
- Trend analysis: Temporal patterns identification
- Volatility analysis: Stability measurements
2. Beautiful Visualizations
All plotting functions in MicrobiomeStat are designed to produce publication-ready figures:
# Taxa barplot
generate_taxa_barplot_single(
data.obj = peerj32.obj,
subject.var = "subject",
time.var = "time",
group.var = "group",
strata.var = "sex",
feature.level = "Phylum",
feature.dat.type = "count",
feature.number = 8,
t.level = "2"
)
3. Automated Report Generation
Generate comprehensive analysis reports with a single function:
# For cross-sectional studies
mStat_generate_report_single(
data.obj = your_data,
subject.var = "subject",
group.var = "treatment",
t.level = "baseline",
feature.dat.type = "count",
output.file = "analysis_report"
)
# For longitudinal studies
mStat_generate_report_long(
data.obj = your_data,
subject.var = "subject",
time.var = "time",
t0.level = "0",
ts.levels = c("1", "2", "3"),
group.var = "treatment",
feature.dat.type = "count",
output.file = "longitudinal_report"
)
Learning Resources
- Comprehensive Tutorial: Visit www.microbiomestat.wiki
- GitHub Repository: github.com/cafferychen777/MicrobiomeStat
- Discord Community: Join our Discord