[go: up one dir, main page]

Skip to content

adrientaudiere/MiscMetabar

Repository files navigation

R DOI codecov Contributor Covenant License: GPL v3 CodeFactor R-CMD-check DOI

MiscMetabar MiscMetabar website

See the pkgdown documentation site here and the package paper in the Journal Of Open Softwares.

Biological studies, especially in ecology, health sciences and taxonomy, need to describe the biological composition of samples. Over the last twenty years, (i) the development of DNA sequencing, (ii) reference databases, (iii) high-throughput sequencing (HTS), and (iv) bioinformatics resources have enabled the description of biological communities through metabarcoding. Metabarcoding involves the sequencing of millions (meta-) of short regions of specific DNA (-barcoding, Valentini, Pompanon, and Taberlet (2009)) often from environmental samples (eDNA, Taberlet et al. (2012)) such as human stomach contents, lake water, soil, and air.

MiscMetabar aims to facilitate the description, transformation, exploration and reproducibility of metabarcoding analyses using R. The development of MiscMetabar relies heavily on the R packages dada2 (Callahan et al. 2016), phyloseq (McMurdie and Holmes 2013) and targets (Landau 2021).

Installation

A CRAN version of MiscMetabar is available.

install.packages("MiscMetabar")

You may need to install required bioconductor packages (dada2 and phyloseq) first. See their installation pages. One other solution is to use the package pak to install MiscMetabar. It comes with the benefit to check for uninstalled dependencies on your computer (system requirements), thank you pak!

pak::pkg_install("MiscMetabar")

You can also install the stable development version from GitHub with:

if (!require("devtools", quietly = TRUE)) {
  install.packages("devtools")
}
devtools::install_github("adrientaudiere/MiscMetabar")

You can install the unstable development version from GitHub with:

if (!require("devtools", quietly = TRUE)) {
  install.packages("devtools")
}
devtools::install_github("adrientaudiere/MiscMetabar", ref = "dev")

Some use of MiscMetabar

See articles in the MiscMetabar website for more examples.

For an introduction to metabarcoding in R, see the state of the field article. The import, export and tracking article explains how to import and export phyloseq objects. It also shows how to summarize useful information (number of sequences, samples and clusters) across bioinformatic pipelines. The article explore data takes a closer look at different ways to explore samples and taxonomic data from phyloseq object.

If you are interested in ecological metrics, see the articles describing alpha-diversity and beta-diversity analysis. The article filter taxa and samples describes some data filtering processes using MiscMetabar and the reclustering tutorial introduces the different way of clustering already-clustered OTU/ASV. The article tengeler explore the dataset from Tengeler et al. (2020) using some MiscMetabar functions.

For developers, I also wrote an article describing some rules of codes.

Summarize a physeq object

library("MiscMetabar")
library("phyloseq")
library("magrittr")
data("data_fungi")
summary_plot_pq(data_fungi)

Alpha-diversity analysis

p <- MiscMetabar::hill_pq(data_fungi, fact = "Height")
p$plot_Hill_0
#> NULL
p$plot_tuckey
#> NULL

Beta-diversity analysis

if (!require("ggVennDiagram", quietly = TRUE)) {
  install.packages("ggVennDiagramà")
}
ggvenn_pq(data_fungi, fact = "Height") +
  ggplot2::scale_fill_distiller(palette = "BuPu", direction = 1) +
  labs(title = "Share number of ASV among Height in tree")

Note for non-Linux users

Some functions may not work on Windows (e.g. track_wflow(), cutadapt_remove_primers(), krona(), vsearch_clustering(), …). A solution is to exploit docker container, for example the using the great rocker project.

Here is a list of functions with some limitations or not working at all on Windows OS:

  • build_phytree_pq()
  • count_seq()
  • cutadapt_remove_primers()
  • krona()
  • merge_krona()
  • multipatt_pq()
  • plot_tsne_pq()
  • rotl_pq()
  • save_pq()
  • tax_datatable()
  • track_wkflow()
  • track_wkflow_samples()
  • tsne_pq()
  • venn_pq()

MiscMetabar is developed under Linux and the vast majority of functions may works on Unix system, but its functionning is not tested under iOS.

Installation of other softwares for Debian Linux distributions

If you encounter any errors or have any questions about the installation of these softwares, please visit their dedicated websites.

sudo apt-get install ncbi-blast+
sudo apt-get install vsearch

An other possibilities is to install vsearch with conda.

git clone https://github.com/torognes/swarm.git
cd swarm/
make

An other possibilities is to install swarm with conda.

git clone https://github.com/frederic-mahe/mumu.git
cd ./mumu/
make
make check
make install  # as root or sudo
conda create -n cutadaptenv cutadapt

Callahan, Benjamin J, Paul J McMurdie, Michael J Rosen, Andrew W Han, Amy Jo A Johnson, and Susan P Holmes. 2016. “DADA2: High-Resolution Sample Inference from Illumina Amplicon Data.” Nature Methods 13 (7): 581–83. https://doi.org/10.1038/nmeth.3869.

Landau, William Michael. 2021. “The Targets r Package: A Dynamic Make-Like Function-Oriented Pipeline Toolkit for Reproducibility and High-Performance Computing.” Journal of Open Source Software 6 (57): 2959. https://doi.org/10.21105/joss.02959.

McMurdie, Paul J., and Susan Holmes. 2013. “Phyloseq: An r Package for Reproducible Interactive Analysis and Graphics of Microbiome Census Data.” PLoS ONE 8 (4): e61217. https://doi.org/10.1371/journal.pone.0061217.

Taberlet, Pierre, Eric Coissac, Mehrdad Hajibabaei, and Loren H Rieseberg. 2012. “Environmental Dna.” Molecular Ecology. Wiley Online Library. https://doi.org/10.1002/(issn)2637-4943.

Valentini, Alice, François Pompanon, and Pierre Taberlet. 2009. “DNA Barcoding for Ecologists.” Trends in Ecology & Evolution 24 (2): 110–17. https://doi.org/10.1016/j.tree.2008.09.011.