DendroPy: a Python library for phylogenetic computing

DendroPy: a Python library for phylogenetic computing

April 25, 2010 | Jeet Sukumaran* and Mark T. Holder
DendroPy is a cross-platform Python library for phylogenetic computing, providing object-oriented tools for reading, writing, simulating, and manipulating phylogenetic data. It emphasizes tree operations and uses a splits-hash mapping for efficient tree distance, similarity, and shape calculations. The library supports various phylogenetic data formats (NEXUS, Newick, PHYLIP, FASTA, NeXML, etc.) and includes rich simulation routines under different models, such as the birth-death model, coalescent, and censored coalescent. DendroPy's data model is flexible, allowing for complex datasets and supporting both rooted and unrooted trees. It enables users to manage multiple taxon sets and perform operations like matrix combination and partitioning. The library also provides functions for tree manipulation, simulation, and statistical analysis, including tree height, length, and various metrics like weighted Robinson-Foulds distances. DendroPy includes applications like 'SumTrees' for summarizing bootstrap or Bayesian support for splits or clades. It also offers interoperability with other Python libraries like BioPython, PyCogent, ETE, and P4, and supports data exchange with R libraries such as APE and Geiger. DendroPy complements existing libraries by focusing on tree metrics, analysis, and simulation, while others focus on different aspects like phylogenomic analysis or tree inference. The library is designed to be user-friendly, with extensive documentation and support for both end-users and developers. It allows seamless export to ETE and is expanding support to other libraries. DendroPy is a valuable tool in phyloinformatics and phylogeography, offering a comprehensive framework for phylogenetic data handling and analysis.DendroPy is a cross-platform Python library for phylogenetic computing, providing object-oriented tools for reading, writing, simulating, and manipulating phylogenetic data. It emphasizes tree operations and uses a splits-hash mapping for efficient tree distance, similarity, and shape calculations. The library supports various phylogenetic data formats (NEXUS, Newick, PHYLIP, FASTA, NeXML, etc.) and includes rich simulation routines under different models, such as the birth-death model, coalescent, and censored coalescent. DendroPy's data model is flexible, allowing for complex datasets and supporting both rooted and unrooted trees. It enables users to manage multiple taxon sets and perform operations like matrix combination and partitioning. The library also provides functions for tree manipulation, simulation, and statistical analysis, including tree height, length, and various metrics like weighted Robinson-Foulds distances. DendroPy includes applications like 'SumTrees' for summarizing bootstrap or Bayesian support for splits or clades. It also offers interoperability with other Python libraries like BioPython, PyCogent, ETE, and P4, and supports data exchange with R libraries such as APE and Geiger. DendroPy complements existing libraries by focusing on tree metrics, analysis, and simulation, while others focus on different aspects like phylogenomic analysis or tree inference. The library is designed to be user-friendly, with extensive documentation and support for both end-users and developers. It allows seamless export to ETE and is expanding support to other libraries. DendroPy is a valuable tool in phyloinformatics and phylogeography, offering a comprehensive framework for phylogenetic data handling and analysis.
Reach us at info@study.space