Learn R Programming

TreeDist (version 2.14.1)

Calculate and Map Distances Between Phylogenetic Trees

Description

Implements measures of tree similarity, including information-based generalized Robinson-Foulds distances (Phylogenetic Information Distance, Clustering Information Distance, Matching Split Information Distance; Smith 2020) ; Jaccard-Robinson-Foulds distances (Bocker et al. 2013) , including the Nye et al. (2006) metric ; the Matching Split Distance (Bogdanowicz & Giaro 2012) ; the Hierarchical Mutual Information (Perotti et al. 2015) ; Maximum Agreement Subtree distances; the Kendall-Colijn (2016) distance , and the Nearest Neighbour Interchange (NNI) distance, approximated per Li et al. (1996) . Includes tools for visualizing mappings of tree space (Smith 2022) , for identifying islands of trees (Silva and Wilkinson 2021) , for calculating the median of sets of trees, and for computing the information content of trees and splits.

Copy Link

Version

Install

install.packages('TreeDist')

Monthly Downloads

2,257

Version

2.14.1

License

GPL (>= 3)

Issues

Pull Requests

Stars

Forks

Maintainer

Martin R. Smith

Last Published

June 10th, 2026

Functions in TreeDist (2.14.1)

Robinson-Foulds

Robinson–Foulds distances, with adjustments for phylogenetic information content
PathDist

Path distance
Plot3

Pseudo-3D plotting
NyeSimilarity

Nye et al. (2006) tree comparison
NormalizeInfo

Normalize tree distances
SplitsCompatible

Are splits compatible?
StartParallel

Calculate distances in parallel
SplitSharedInformation

Shared information content of two splits
TransferConsensus

Consensus tree minimizing transfer distance
ReduceTrees

Collapse areas of agreement between two trees
ReportMatching

List clades as text
TransferDist

Transfer dissimilarity between phylogenetic trees
MatchingSplitDistance

Matching Split Distance
cpp_mutual_clustering_all_pairs

Pairwise mutual clustering information — batch computation
VisualizeMatching

Visualize a matching
TreeInfo

Information content of splits within a tree
cpp_transfer_consensus

Transfer consensus (C++ implementation)
TreeDist-package

TreeDist: Distances between Phylogenetic Trees
NNIDist

Approximate Nearest Neighbour Interchange distance
MeilaVariationOfInformation

Use variation of clustering information to compare pairs of splits
cluster-statistics

Cluster size statistics
clone

Clone / duplicate an object clone() physically duplicates objects
.PairMean

Mean of two numbers
.SPRPairDeO

SPR approximation via Oliveira Martins et al. (2008)
SpectralEigens

Eigenvalues for spectral clustering
SplitEntropy

Entropy of two splits
SPRDist

Approximate the Subtree Prune and Regraft distance
.MASTSizeEdges

Calculate MAST size from edge matrices.
.ThreeDPlotServer

Helper function for shiny 3D plotting
cpp_transfer_dist_cross_pairs

Cross-pairs transfer dissimilarity (OpenMP)
TreeDistPlot

Plot a simple tree
TreeDistance

Information-based generalized Robinson–Foulds distances
median.multiPhylo

Median of a set of trees
.TreeDistance

Calculate distance between trees, or lists of trees
cpp_transfer_dist

Per-pair transfer dissimilarity
cpp_transfer_dist_all_pairs

All-pairs transfer dissimilarity (OpenMP)
entropy_int

Calculate entropy of integer vector of counts
CompareAll

Distances between each pair of trees
Islands

Find islands from distance matrix
AllSplitPairings

Variation of information for all split pairings
HierarchicalMutualInfo

Hierarchical Mutual Information
HH

Self hierarchical mutual information
HierarchicalMutualInformation

Hierarchical mutual information
HPart

Hierarchical partition structure
Entropy

Entropy in bits
MappingQuality

Faithfulness of mapped distances
KendallColijn

Kendall–Colijn distance
JaccardRobinsonFoulds

Jaccard–Robinson–Foulds metric
CalculateTreeDistance

Wrapper for tree distance calculations
GeneralizedRF

Generalized Robinson–Foulds distance
MASTSize

Maximum Agreement Subtree size
KMeansPP

k-means++ clustering
MapTrees

Graphical user interface for mapping distances and analysing tree space
MSTSegments

Add minimum spanning tree to plot, colouring by stress
LAPJV

Solve linear assignment problem using LAPJV
MCITree

Maximum Clade Information Tree