https://github.com/microbialgenomics-irsicaixaorg/dar
dar: runs multiple differential abundance analysis methods and through a consensus strategy returns a set of differentially abundant features.
https://github.com/microbialgenomics-irsicaixaorg/dar
bioconductor biomarker-discovery differential-abundance-analysis feature-selection microbiology microbiome phyloseq rstats
Last synced: 4 months ago
JSON representation
dar: runs multiple differential abundance analysis methods and through a consensus strategy returns a set of differentially abundant features.
- Host: GitHub
- URL: https://github.com/microbialgenomics-irsicaixaorg/dar
- Owner: MicrobialGenomics-IrsicaixaOrg
- License: other
- Created: 2022-05-06T07:29:52.000Z (about 4 years ago)
- Default Branch: devel
- Last Pushed: 2026-02-05T17:35:53.000Z (4 months ago)
- Last Synced: 2026-02-05T20:12:03.747Z (4 months ago)
- Topics: bioconductor, biomarker-discovery, differential-abundance-analysis, feature-selection, microbiology, microbiome, phyloseq, rstats
- Language: R
- Homepage: https://microbialgenomics-irsicaixaorg.github.io/dar/
- Size: 50.7 MB
- Stars: 5
- Watchers: 3
- Forks: 1
- Open Issues: 12
-
Metadata Files:
- Readme: README.Rmd
- Changelog: NEWS.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
---
output: github_document
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
[](https://lifecycle.r-lib.org/articles/stages.html#experimental)
[](https://github.com/MicrobialGenomics-IrsicaixaOrg/dar/actions)
[](https://app.codecov.io/gh/MicrobialGenomics-IrsicaixaOrg/dar?branch=devel)
[](https://makeapullrequest.com)
[](https://github.com/MicrobialGenomics-IrsicaixaOrg/dar/issues)
[](https://github.com/MicrobialGenomics-IrsicaixaOrg/dar/pulls)
## Introduction
Differential abundance testing in microbiome data challenges both parametric
and non-parametric statistical methods, due to its sparsity, high variability
and compositional nature. Microbiome-specific statistical methods often assume
classical distribution models or take into account compositional specifics.
These produce results that range within the specificity vs sensitivity space
in such a way that type I and type II error are difficult to ascertain in real
microbiome data when a single method is used. Recently, a consensus approach
based on multiple differential abundance (DA) methods was recently suggested
in order to increase robustness.
With dar, you can use dplyr-like pipeable sequences of DA methods and then
apply different consensus strategies. In this way we can obtain more reliable
results in a fast, consistent and reproducible way.
## Installation
You can install the development version of dar from [GitHub](https://github.com/) with:
```{r eval=FALSE}
# install.packages("pak")
pak::pkg_install("MicrobialGenomics-IrsicaixaOrg/dar")
```
## Usage
```{r}
library(dar)
data("metaHIV_phy")
## Define recipe
rec <-
recipe(metaHIV_phy, var_info = "RiskGroup2", tax_info = "Species") |>
step_subset_taxa(tax_level = "Kingdom", taxa = c("Bacteria", "Archaea")) |>
step_filter_taxa(.f = "function(x) sum(x > 0) >= (0.03 * length(x))") |>
step_maaslin() |>
step_aldex()
rec
## Prep recipe
da_results <- prep(rec, parallel = TRUE)
da_results
## Consensus strategy
n_methods <- 2
da_results <- bake(da_results, count_cutoff = n_methods)
da_results
## Results
cool(da_results)
```
## Contributing
- If you think you have encountered a bug, please [submit an issue](https://github.com/MicrobialGenomics-IrsicaixaOrg/dar/issues).
- Either way, learn how to create and share a [reprex](https://reprex.tidyverse.org/articles/articles/learn-reprex.html) (a minimal, reproducible example), to clearly communicate about your code.
- Working on your first Pull Request? You can learn how from this *free* series [How to Contribute to an Open Source Project on GitHub](https://kcd.im/pull-request)
## Code of Conduct
Please note that the dar project is released with a [Contributor Code of Conduct](https://contributor-covenant.org/version/2/0/CODE_OF_CONDUCT.html). By contributing to this project, you agree to abide by its terms.
