The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
‘ConsTree’ is an R package providing a comprehensive, efficient suite of methods for summarizing a collection of phylogenetic trees — for example a bootstrap or Bayesian posterior sample — as a single consensus tree.
These methods take a list of trees (or a multiPhylo)
that share the same leaves, and return a single phylo
object. Methods differ in which groupings (splits or clusters) the
consensus tree retains:
| Function | Objective |
|---|---|
Strict() |
Retains groupings that occur in every tree |
Majority() / MajorityRule() |
Retains groupings that occur in most trees (tunable
via p) |
Loose() |
Retains groupings that no tree contradicts (semi-strict / combinable-component) |
MajorityPlus() |
Retains groupings that more trees display than contradict |
Frequency() |
Retains groupings that are more frequent than every conflicting grouping (frequency-difference) |
Greedy() |
Adds groupings greedily, most frequent first, when compatible with those already kept (extended majority-rule) |
Adams() |
Constructed from the finest root-level partition shared by every tree (may introduce novel groupings; rooted) |
Local() |
Built from rooted triplets shared by every tree (minimum rooted/induced local consensus; ≤ 20 leaves) |
RStar() |
Includes each rooted triplet grouping that wins a plurality against each alternative separately |
These methods summarize trees through a distance or tree-space criterion:
| Function | Objective |
|---|---|
Average() |
The tree best fitting the mean path-length (patristic) distances of the inputs |
Quartet() |
An approximate median minimizing the total quartet distance to the inputs; often more resolved than majority-rule |
Transfer() |
A greedy consensus minimizing total transfer distance to the inputs; often more resolved than majority-rule |
BHVMean() |
the Fréchet mean tree in Billera–Holmes–Vogtmann
treespace, with branch lengths; BHVDistance(),
BHVPairwiseDistances() and BHVVariance()
provide the supporting geodesic distances and dispersion |
library("ConsTree")
trees <- ape::as.phylo(1:100, 8) # 100 eight-leaf trees
Strict(trees) # most conservative
Majority(trees) # the familiar 50% majority-rule tree
Loose(trees) # everything not actively contradicted
Frequency(trees) # frequency-difference: often more resolved than majority
Greedy(trees) # most resolved of the split-based summaries
Transfer(trees) # minimizes transfer distance; often more resolved than majority-ruleInstall from CRAN (anticipated Oct 2026) with:
install.packages("ConsTree")Install the development version from GitHub:
if (!require("pak")) install.packages("pak")
pak::pkg_install("ms609/ConsTree")‘ConsTree’ builds on TreeTools (the fast engine for strict and majority-rule consensus calculation) and ‘TreeDist’ (tree distances and information-theoretic consensus).
‘TreeDist’’s
median.multiPhylo offers a complementary summary: the tree
within a sample that has the lowest median clustering information
distance to the others.
The quartet machinery underlying Quartet() builds on the
‘Quartet’ package, which
counts the resolved- and shared-quartet statistics between trees; and
the BHV summaries relate to ‘distory’, which
computes geodesic distances in the same treespace.
‘Rogue’ identifies unstable wildcard leaves whose removal can improve the resolution and support of a consensus tree; dropping rogue taxa before summarizing with ‘ConsTree’ often leads a reduced consensus tree with increased resolution.
The manual page for each function details the literature that
underpins each method; please cite this literature alongside this
package (type citation("ConsTree")).
Please note that this project is released with a Contributor Code of Conduct. By contributing, you agree to abide by its terms.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.