treeclimbR
Science Score: 49.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 2 DOI reference(s) in README -
○Academic publication links
-
✓Committers with academic emails
1 of 4 committers (25.0%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.3%) to scientific vocabulary
Keywords from Contributors
Repository
Basic Info
- Host: GitHub
- Owner: csoneson
- Language: R
- Default Branch: devel
- Homepage: https://csoneson.github.io/treeclimbR/
- Size: 5.37 MB
Statistics
- Stars: 20
- Watchers: 4
- Forks: 2
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
treeclimbR
treeclimbR is an algorithm to pinpoint the optimal data-dependent resolution for interpreting hierarchical hypotheses.
The algorithm is described in more detail in the following paper:
Huang R, Soneson C, Germain PL, Schmidt TSB, Mering CV, Robinson MD: treeclimbR pinpoints the data-dependent resolution of hierarchical hypotheses. Genome Biology 22(1):157 (2021).
Installation
treeclimbR can be installed from Bioconductor (release 3.19 onwards) via
``` r if (!require("BiocManager", quietly = TRUE)) install.packages("BiocManager")
BiocManager::install("treeclimbR") ```
Usage
A detailed vignette outlining the main functionality is available here.
Basic example (more details here)
In this example application, we first generate a random tree with 100 leaves, with each leaf representing an entity (e.g., a microbial species). Then we sample counts (abundances) of these entities in each sample from a multinomial distribution. In total, there are 40 samples (20 assigned to group A and the other 20 to group B). 18 entities are randomly selected to display differential abundance between the groups (and will have their counts multiplied by 2 in group A).
Before running treeclimbR, we expand the leaf-level count matrix to also encompass internal nodes, by summing the counts for all the corresponding leaves.
Next, we perform a Wilcoxon rank sum test on each node in the tree to obtain P-values and directions of change.
Details of the analysis are available here.
The question is now whether it is beneficial to interpret parts of the tree on a level higher up in the tree than the leaves - this would be the case if there are subtrees where all nodes and leaves change consistently in the same direction.
In this situation, we can summarize the signal on the root level of that subtree, which will reduce the length of the result list and improve the interpretability.
The optimal aggregation level can vary across the tree, and will be inferred from the data.
Thus, treeclimbR will propose a range of aggregation 'candidates', corresponding to different values of a threshold parameter t.
These candidates are shown in the animation below.
Note that as t increases, the aggregation happens further up the tree.
Orange branches correspond to branches with a true differential signal, and blue circles indicate the aggregated nodes for a given threshold value.
The heatmap shows the abundances of entities (rows) across the samples (columns) split by group.
The trees below compare the nodes that are identified as significantly differentially abundant with treeclimbR for the optimal value of t (in red) to the leaves that are found to be significant (at an adjusted p-value threshold of 0.05) after applying a multiple hypothesis testing correction using the Benjamini-Hochberg method to the leaf-level results only (in blue).
Other simulation scenarios (more details here)
The animations below show the identified candidates under other simulation settings. Orange branches represent 'positive' signal (higher abundance in group B compared to group A), and blue branches represent 'negative' signal (lower abundance in group B compared to group A).
Learn more
Additional examples of applying treeclimbR to different types of data can be found here.
Owner
- Name: Charlotte Soneson
- Login: csoneson
- Kind: user
- Website: http://csoneson.github.io/
- Twitter: CSoneson
- Repositories: 110
- Profile: https://github.com/csoneson
GitHub Events
Total
- Watch event: 1
- Push event: 8
- Create event: 2
Last Year
- Watch event: 1
- Push event: 8
- Create event: 2
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| fionarhuang | f****g@g****m | 200 |
| Charlotte Soneson | c****n@g****m | 157 |
| J Wokaty | j****y | 4 |
| A Wokaty | a****y@s****u | 2 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 7
- Total pull requests: 19
- Average time to close issues: 7 months
- Average time to close pull requests: 3 days
- Total issue authors: 4
- Total pull request authors: 2
- Average comments per issue: 2.29
- Average comments per pull request: 0.0
- Merged pull requests: 19
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 1
- Average time to close issues: N/A
- Average time to close pull requests: less than a minute
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- andrewjmc (3)
- julien-roux (2)
- fionarhuang (1)
- ndamond (1)
Pull Request Authors
- fionarhuang (15)
- csoneson (7)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- bioconductor 3,728 total
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 4
- Total maintainers: 1
bioconductor.org: treeclimbR
An algorithm to find optimal signal levels in a tree
- Homepage: https://github.com/csoneson/treeclimbR
- Documentation: https://bioconductor.org/packages/release/bioc/vignettes/treeclimbR/inst/doc/treeclimbR.pdf
- License: Artistic-2.0
-
Latest release: 1.4.0
published 11 months ago
Rankings
Maintainers (1)
Dependencies
- R >= 4.1.0 depends
- TreeSummarizedExperiment >= 1.99.0 depends
- S4Vectors * imports
- SummarizedExperiment * imports
- ape * imports
- data.table * imports
- diffcyt * imports
- dirmult * imports
- dplyr * imports
- edgeR * imports
- ggnewscale * imports
- ggplot2 * imports
- ggtree * imports
- methods * imports
- tibble * imports
- tidyr * imports
- viridis * imports
- knitr * suggests
- rmarkdown * suggests
- scales * suggests
- actions/cache v1 composite
- actions/checkout v3 composite
- actions/upload-artifact v3 composite
- actions/upload-artifact master composite
- grimbough/bioc-actions/build-install-check v1 composite
- grimbough/bioc-actions/run-BiocCheck v1 composite
- grimbough/bioc-actions/setup-bioc v1 composite
- r-lib/actions/setup-pandoc v2 composite