Skip to main content

A Python library for phylogenetics and phylogenetic computing: reading, writing, simulation, processing and manipulation of phylogenetic trees (phylogenies) and characters.

Project description


DendroPy is a Python library for phylogenetic computing. It provides classes and functions for the simulation, processing, and manipulation of phylogenetic trees and character matrices, and supports the reading and writing of phylogenetic data in a range of formats, such as NEXUS, NEWICK, NeXML, Phylip, FASTA, etc. Application scripts for performing some useful phylogenetic operations, such as data conversion and tree posterior distribution summarization, are also distributed and installed as part of the libary. DendroPy can thus function as a stand-alone library for phylogenetics, a component of more complex multi-library phyloinformatic pipelines, or as a scripting “glue” that assembles and drives such pipelines.

The primary home page for DendroPy, with detailed tutorials and documentation, is at:

DendroPy is also hosted in the official Python repository:

Requirements and Installation

DendroPy 4.x runs under Python 3 (all versions > 3.1) and Python 2 (Python 2.7 only).

You can install DendroPy by running:

$ sudo pip install dendropy

More information is available here:



Note that some tests rely on PAUP* being available on your system. You will need to set the environmental variable DENDROPY_PAUP_EXECUTABLE_PATH to the path of the PAUP* executable for these tests to be run, e.g.:

DENDROPY_PAUP_EXECUTABLE_PATH=/usr/local/bin/paup python test


DENDROPY_PAUP_EXECUTABLE_PATH=/usr/local/bin/paup python -m dendropy.test

If this variable is not set or set to “NONE”, then any tests that rely on PAUP* will NOT be run.

Tests can be run by typing:

$ python -m dendropy.test

By default, all tests are run. You can run specific by providing the fully-qualified name of the modules, test cases, or specific test methods to run, e.g.:

$ python -m dendropy.test test_tokenizer
$ python -m dendropy.test test_tokenizer.TestCase
$ python -m dendropy.test test_tokenizer.TestCase.test1
$ python -m dendropy.test test_tokenizer test_datamodel_taxon

Or special pre-defined sub-groups of tests, e.g.:

$ python -m dendropy.test @datamodel
$ python -m dendropy.test @dataio
$ python -m dendropy.test @datamodel @newick

A list of all available sub-groups can be seen by:

$ python -m dendropy.test --help-testgroups

For any tests run, you can set the level at which the test progress is logged by:

$ python -m dendropy.test -l DEBUG all

For all options, type:

$ python -m dendropy.test --help

License and Warranty

Please see the file “LICENSE.rst” for details.

Current Release

The current release of DendroPy is version 4.1.0 (development-master-715b4cc, 2016-03-13 15:21:37).

Project details

Release history Release notifications

History Node


History Node


History Node


This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
DendroPy-4.1.0.tar.gz (16.5 MB) Copy SHA256 hash SHA256 Source None Mar 16, 2016

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page