Learn R Programming

phangorn (version 2.1.1)

superTree: Super Tree and Species Tree methods

Description

These function superTree allows the estimation of a supertree from a set of trees using either Matrix representation parsimony, Robinson-Foulds or SPR as criterion. coalSpeciesTree estimates species trees and can multiple individuals per species.

Usage

superTree(tree, method = "MRP", rooted=FALSE, trace=0, ...) coalSpeciesTree(tree, X, sTree = NULL)

Arguments

tree
an object of class multiPhylo
method
An argument defining which algorithm is used to optimize the tree. Possible are "MRP", "NNI", and "SPR".
rooted
should the resulting supertrees be rooted.
X
A phyDat object to define which individual belongs to which species.
trace
defines how much information is printed during optimization.
sTree
A species tree which forces the topology.
...
further arguments passed to or from other methods.

Value

The function returns an object of class phylo.

Details

The function superTree extends the function mrp.supertree from Liam Revells, with artificial adding an outgroup on the root of the trees. This allows to root the supertree afterwards. The functions is internally used in DensiTree. The implementation for the RF- and SPR-supertree are very basic so far and assume that all trees share the same set of taxa.

coalSpeciesTree estimates a single linkage tree as suggested by Liu et al. (2010) from the element wise minima of the cophenetic matrices of the gene trees. It extends speciesTree in ape as it allows that have several individuals per gene tree.

References

Liu, L., Yu, L. and Pearl, D. K. (2010) Maximum tree: a consistent estimator of the species tree. Journal of Mathematical Biology, 60, 95--106.

See Also

mrp.supertree, speciesTree, densiTree, RF.dist, SPR.dist

Examples

Run this code
data(Laurasiatherian)
set.seed(1)
bs <- bootstrap.phyDat(Laurasiatherian, FUN = function(x)upgma(dist.hamming(x)), bs=50)
class(bs) <- 'multiPhylo'

mrp_st <- superTree(bs, rooted=TRUE)
plot(superTree(mrp_st))
## Not run: 
# rf_st <- superTree(bs, method = "RF")
# spr_st <- superTree(bs, method = "SPR")
# ## End(Not run)

Run the code above in your browser using DataLab