dist.topo: Topological Distances Between Two Trees

Description Usage Arguments Details Value Note Author(s) References See Also Examples


This function computes the topological distance between two phylogenetic trees or among trees in a list (if y = NULL using different methods.


dist.topo(x, y = NULL, method = "PH85")



an object of class "phylo" or of class "multiPhylo".


an (optional) object of class "phylo".


a character string giving the method to be used: either "PH85", or "score".


Two methods are available: the one by Penny and Hendy (1985, originally from Robinson and Foulds 1981), and the branch length score by Kuhner and Felsenstein (1994). The trees are always considered as unrooted.

The topological distance is defined as twice the number of internal branches defining different bipartitions of the tips (Robinson and Foulds 1981; Penny and Hendy 1985). Rzhetsky and Nei (1992) proposed a modification of the original formula to take multifurcations into account.

The branch length score may be seen as similar to the previous distance but taking branch lengths into account. Kuhner and Felsenstein (1994) proposed to calculate the square root of the sum of the squared differences of the (internal) branch lengths defining similar bipartitions (or splits) in both trees.


a single numeric value.


The geodesic distance of Billera et al. (2001) has been disabled: see the package distory on CRAN.


Emmanuel Paradis


Billera, L. J., Holmes, S. P. and Vogtmann, K. (2001) Geometry of the space of phylogenetic trees. Advances in Applied Mathematics, 27, 733–767.

Kuhner, M. K. and Felsenstein, J. (1994) Simulation comparison of phylogeny algorithms under equal and unequal evolutionary rates. Molecular Biology and Evolution, 11, 459–468.

Nei, M. and Kumar, S. (2000) Molecular Evolution and Phylogenetics. Oxford: Oxford University Press.

Penny, D. and Hendy, M. D. (1985) The use of tree comparison metrics. Systemetic Zoology, 34, 75–82.

Robinson, D. F. and Foulds, L. R. (1981) Comparison of phylogenetic trees. Mathematical Biosciences, 53, 131–147.

Rzhetsky, A. and Nei, M. (1992) A simple method for estimating and testing minimum-evolution trees. Molecular Biology and Evolution, 9, 945–967.

See Also

read.tree to read tree files in Newick format, cophenetic.phylo, prop.part


ta <- rtree(30)
tb <- rtree(30)
dist.topo(ta, ta) # 0
dist.topo(ta, tb) # unlikely to be 0

Search within the ape package
Search all R packages, documentation and source code

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.