skbio.tree.TreeNode.compare_rfd

TreeNode.compare_rfd(other, proportion=False)[source]

Calculates the Robinson and Foulds symmetric difference

State: Experimental as of 0.4.0.

Parameters:

other : TreeNode

A tree to compare against

proportion : bool

Return a proportional difference

Returns:

float

The distance between the trees

Raises:

ValueError

If the tip names between self and other are equal.

Notes

Implementation based off of code by Julia Goodrich. The original description of the algorithm can be found in [R278].

References

[R278](1, 2) Comparison of phylogenetic trees. Robinson and Foulds. Mathematical Biosciences. 1981. 53:131-141

Examples

>>> from skbio import TreeNode
>>> tree1 = TreeNode.read(["((a,b),(c,d));"])
>>> tree2 = TreeNode.read(["(((a,b),c),d);"])
>>> tree1.compare_rfd(tree2)
2.0