Local() returns the local consensus
(Kannan et al. 1998)
of a set of rooted trees.
The local consensus is the most conservative tree consistent with the rooted
triplets shared by every input tree. The minimum rooted local consensus
(MinRLC, type = "rooted") and the minimum induced local consensus (MinILC,
type = "induced") differ in how the resolution of the result is scored.
Usage
Local(trees, type = c("rooted", "induced"))Value
Local() returns an object of class phylo denoting the local
consensus tree. When there is no valid consensus (as no common triplets
separate any pair of trees), a star tree is returned.
Details
The implementation builds on the algorithms of Jansson et al. (2018) , which generalize the RV-II type consensus of Kannan et al. (1998) ; please cite both papers when using this method.
Because the algorithm is exponential, Local() is limited to n <= 20
leaves. Running time is faster when input trees are more congruent.
References
Jansson J, Rajaby R, Sung W (2018).
“Minimal phylogenetic supertrees and local consensus trees.”
AIMS Medical Science, 5(2), 181–203.
doi:10.3934/medsci.2018.2.181
.
Kannan S, Warnow T, Yooseph S (1998).
“Computing the local consensus of trees.”
SIAM Journal on Computing, 27(6), 1695–1724.
doi:10.1137/S0097539795287642
.
See also
Closely related: Strict(), Majority(), Adams().
Other consensus methods:
Adams(),
Average(),
Frequency(),
Greedy(),
Loose(),
Majority(),
MajorityPlus(),
Quartet(),
RStar(),
Strict(),
Transfer()
Examples
# Two trees that agree on one cherry but disagree on overall topology
t1 <- ape::read.tree(text = "(1,((2,3),4));")
t2 <- ape::read.tree(text = "(1,((2,4),3));")
Local(list(t1, t2), "rooted") # keeps clade {2,3,4} only
#>
#> Phylogenetic tree with 4 tips and 2 internal nodes.
#>
#> Tip labels:
#> 1, 2, 3, 4
#>
#> Rooted; no branch length.