MicrobiomeAnalystR-2.0 is an update to the version 1 from 2020 and contains the R functions and libraries underlying the popular MicrobiomeAnalyst web server, including > 200 functions for statistical, functional, and visual analysis of microbiome data. The new version adds three new modules: 16S raw data processing, Microbiome-metabolomics integrative analysis and meta-analysis. The package is synchronized with the MicrobiomeAnalyst web server. After installing and loading the package, users will be able to reproduce the same results from their local computers using the corresponding R command history downloaded from MicrobiomeAnalyst, thereby achieving maximum flexibility and reproducibility.
If you are using RStudio, ensure that it has been updated to the latest version for smoother installation of MicrobiomeAnalystR and overall better compatibility with all other R packages.
To use MicrobiomeAnalystR , first install all package dependencies. Ensure that you are able to download packages from Bioconductor - the Bioconductor package ("BiocManager") and RTools should be pre-installed. To install package dependencies, one can use the pacman R package (for those with >R 3.5.1). Note that some of these packages may require additional library dependencies that need to be installed prior to their own successful installation. For users who wish to perform raw sequence data processing, dada2 will also need to be installed.
MicrobiomeAnalystR will not be successfully installed until all package dependencies and their associated dependencies are also installed. An example message signaling the R package installation failure is "non-zero exit status". The most common reason is that not all R package dependencies were successfully installed. If you are unable to run the pacman function, you will have to install each R package dependency one by one using install.packages("x", dependencies = TRUE) if the package is from CRAN or BiocManager::install("x") if the package is from Bioconductor. Note to know where the package is deposited, simply google the R package - i.e. "phyloseq R" will return the Bioconductor page where you can follow the installation instructions for that R package.
Note about Tax4Fun: the older version is no longer supported on CRAN but can still be installed from nick-youngblut/Tax4Fun by ensuring the following dependencies are also installed - rhdf5; qiimer; joey711/biom.
install.packages("pacman") library(pacman) pacman::p_load(phyloseq, metacoder, pryr, biomformat, RColorBrewer, ggplot2, gplots, Cairo, igraph, BiocParallel, randomForest, metagenomeSeq, MASS, DESeq2, vegan, RJSONIO, ggfortify, pheatmap, xtable, genefilter, data.table, reshape, stringr, ape, grid, gridExtra, splitstackshape, edgeR, globaltest, R.utils, viridis, ggrepel, ppcor, qs, dplyr, limma, memoise, tidyverse)
MicrobiomeAnalystR is freely available from GitHub. Note that the R package is currently under construction. The package documentation, including the vignettes for each module and user manual is available within the downloaded R package file. If all package dependencies were installed, you will be able to install the MicrobiomeAnalystR. There are three options, A) using the R package devtools, B) cloning the github, C) manually downloading the .tar.gz file. Note that the MicrobiomeAnalystR github will have the most up-to-date version of the package.
Due to issues with Latex, some users may find that they are only able to install MicrobiomeAnalystR without any documentation (i.e. vignettes).
# Step 1: Install devtools install.packages("devtools") library(devtools) # Step 2: Install MicrobiomeAnalystR WITHOUT documentation devtools::install_github("xia-lab/MicrobiomeAnalystR", build = TRUE, build_opts = c("--no-resave-data", "--no-manual", "--no-build-vignettes")) # Step 2: Install MicrobiomeAnalystR WITH documentation devtools::install_github("xia-lab/MicrobiomeAnalystR", build = TRUE, build_opts = c("--no-resave-data", "--no-manual"))
The * must be replaced by what is actually downloaded and built. For instance, check your Downloads folder to see what tar.gz file was downloaded. So if you download MicrobiomeAnalystR_1.0.1.tar.gz, replace the * with the downloaded version number.
git clone https://github.com/xia-lab/MicrobiomeAnalystR.git R CMD build MicrobiomeAnalystR R CMD INSTALL MicrobiomeAnalystR_*.tar.gz
To showcase how to utilize MicrobiomeAnalystR, we provide a detailed tutorial to perform a comprehensive end-to-end workflow from raw sequence data preprocessing to knowledge-based analysis. The dataset showcased in the tutorial consists of a subset of pediatric IBD stool samples obtained from the Integrative Human Microbiome Project Consortium (https://ibdmdb.org/). The tutorial is available inside the R package as a vignette.
For detailed tutorials on how to use MicrobiomeAnalystR, please refer to the R package vignettes. These vignettes include a comprehensive tutorial introducing MicrobiomeAnalystR, four detailed step-by-step tutorials with example data for each of the main MetaboAnalytR modules, and a case-study showcasing the end-to-end functionality of MicrobiomeAnalystR. Note, the functions below work only if the R package vignettes were built.
Tutorials for new features of version 2.0 are currently under development.
Within R:
vignette(package="MicrobiomeAnalystR")
Within a web-browser:
browseVignettes("MicrobiomeAnalystR")
Init.MbSetObj()
, For meta-analysis please run this function Init.DataMeta(mbSet, F)
as well:#set mode to local = FALSE library(MicrobiomeAnalystR) mbSet <- Init.MbSetObj(); mbSet <- Init.DataMeta(mbSet, F); mbSet <- SetModuleType(mbSet, "meta")
2.1 Read data table of your datasets ```{eval=FALSE} mbSet<-Read16SAbundDataMeta(mbSet, "data1.csv","text","GreengenesID","F","false"); mbSet<-Read16SAbundDataMeta(mbSet, "data2.csv","text","GreengenesID","F","false"); mbSet<-Read16SAbundDataMeta(mbSet, "data3.csv","text","GreengenesID","F","false");
2.2 Read metadata table of your datasets ```{eval=FALSE} #the first argument is used to indicate the dataset to be updated mbSet<-ReadSampleTableMetaInd(mbSet, "data1.csv", "data1_meta.csv"); mbSet<-ReadSampleTableMetaInd(mbSet, "data2.csv", "data2_meta.csv"); mbSet<-ReadSampleTableMetaInd(mbSet, "data3.csv", "data3_meta.csv");
2.3 Read taxa table of your datasets ```{eval=FALSE} mbSet<-Read16STaxaTableMeta(mbSet, "data1.csv", "data1_tax.csv"); mbSet<-Read16STaxaTableMeta(mbSet, "data2.csv", "data2_tax.csv"); mbSet<-Read16STaxaTableMeta(mbSet, "data3.csv", "data3_tax.csv");
3. Sanity check your data table, metadata table, individually. Followed by the creation of phyloseq Object. ```{eval=FALSE} mbSet<-SanityCheckDataMeta(mbSet, "data1.csv", "text"); mbSet<-SanityCheckSampleDataMeta(mbSet, "data1.csv"); mbSet<-CreatePhyloseqObjMeta(mbSet, "data1.csv", "text","GreengenesID","F","F") mbSet<-SanityCheckDataMeta(mbSet, "data2.csv", "text"); mbSet<-SanityCheckSampleDataMeta(mbSet, "data2.csv"); mbSet<-CreatePhyloseqObjMeta(mbSet, "data2.csv", "text","GreengenesID","F","F") mbSet<-SanityCheckDataMeta(mbSet, "data3.csv", "text"); mbSet<-SanityCheckSampleDataMeta(mbSet, "data3.csv"); mbSet<-CreatePhyloseqObjMeta(mbSet, "data3.csv", "text","GreengenesID","F","F")
5. Plot diagnostic plots to have an overview of the uploaded datasets. This step is useful to determine the uploaded datasets are on similar scale and overall sample separation. ```{eval=FALSE} PlotMetaPCA("qc_meta_pca_0","72", "png", ""); PlotMetaDensity("qc_meta_density_0","72", "png", ""); mbSet<-PlotLibSizeView(mbSet, "norm_libsizes_0","png");
mbSet<-ApplyAbundanceFilterMeta(mbSet, "data2.csv", "prevalence", 0, 0.1); mbSet<-ApplyVarianceFilterMeta(mbSet, "data2.csv", "iqr", 0.0); mbSet<-PerformNormalizationMeta(mbSet, "data2.csv", "none", "colsum", "none");
mbSet<-ApplyAbundanceFilterMeta(mbSet, "data3.csv", "prevalence", 0, 0.1); mbSet<-ApplyVarianceFilterMeta(mbSet, "data3.csv", "iqr", 0.0); mbSet<-PerformNormalizationMeta(mbSet, "data3.csv", "none", "colsum", "none");
mbSet<-MergeDatasets(mbSet, "OTU", "study_condition")
7. Perform batch correction to minimize study specific bias. MicrobiomeAnalyst is using batch correction method from MMUPHin packaged that has been adapted for zero-inflated microbiome datasets. ```{eval=FALSE} PerformBatchCorrection(); mbSet<-MergeDatasets(mbSet, "OTU", "study_condition");
```{eval=FALSE} mbSet<-PerformMetaEffectSize(mbSet, "metafeature_bar_0", "OTU","study_condition", 0.05,"LM","REML","png",72)
```
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.