Skip to main content

Lightweight python library for predicting the difficulty of alignments in phylogenetics

Project description

PyPythia: Phylogenetic Difficulty Prediction Library

Pythia GH actions CI

Introduction

Pythia is a lightweight python library to predict the difficulty of Multiple Sequence Alignments (MSA). Phylogenetic analyzes under the Maximum-Likelihood (ML) model are time and resource intensive. To adequately capture the vastness of tree space, one needs to infer multiple independent trees. On some datasets, multiple tree inferences converge to similar tree topologies, on others to multiple, topologically highly distinct yet statistically indistinguishable topologies. Pythia predicts the degree of difficulty of analyzing a dataset prior to initiating ML-based tree inferences. Predicting the difficulty using Pythia is substantially faster than inferring multiple ML trees using RAxML-NG. Pythia can be used to increase user awareness with respect to the amount of signal and uncertainty to be expected in phylogenetic analyzes, and hence inform an appropriate (post-)analysis setup. Further, it can be used to select appropriate search algorithms for easy-, intermediate-, and hard-to-analyze datasets. Pythia supports DNA, AA, and morphological data in Phylip and FASTA format.

Documentation

Install instructions, the CLI and the Python API are documented here.

Support

If you encounter any trouble using Pythia, have a question, or you find a bug, please feel free to open an issue here.

Publication

The paper explaining the details of Pythia is published in MBE: Haag, J., Höhler, D., Bettisworth, B., & Stamatakis, A. (2022). From Easy to Hopeless - Predicting the Difficulty of Phylogenetic Analyses. Molecular Biology and Evolution, 39(12). https://doi.org/10.1093/molbev/msac254

[!WARNING] Since this publication, we made some considerable changes to Pythia. The most important change is that we switched from using a Random Forest Regressor to using a LightGBM Gradient Boosted Tree Regressor. This affects all Pythia versions >= 1. If you use Pythia in your work, please state the correct learning algorithm. If you are unsure, feel free to reach out to me 🙂

We will soon publish a pre-print that explains the changes in detail, stay tuned!

C Library

The same functionality is also available as C library here. Since the C library depends on Coraxlib it is not as easy and fast to use as this python library. If you are only interested in the difficulty of your MSA, we recommend using this Python library. If you want to incorporate the difficulty prediction in a phylogenetic tool, we recommend using the faster C library.

Project details


Download files

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

Source Distribution

pythiaphylopredictor-2.0.0.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pythiaphylopredictor-2.0.0-py3-none-any.whl (978.4 kB view details)

Uploaded Python 3

File details

Details for the file pythiaphylopredictor-2.0.0.tar.gz.

File metadata

  • Download URL: pythiaphylopredictor-2.0.0.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.10

File hashes

Hashes for pythiaphylopredictor-2.0.0.tar.gz
Algorithm Hash digest
SHA256 7449450ac27ec783ad103392035de5725e6fa54c65ec655c14b4d4734bb88b05
MD5 3ff598cfdc9b629a56d0e2b0e0504885
BLAKE2b-256 78d07220271fd8ea9c8d93ad4181d2a9595be688157c3a5e045534c4187e6ece

See more details on using hashes here.

File details

Details for the file pythiaphylopredictor-2.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pythiaphylopredictor-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2fb663dccad87d418189879352a8c4f71831eadbb0874ae13fd15e190e5fd414
MD5 184bcc493d357937bb8a5c064d09ebd9
BLAKE2b-256 f71b3ce3a778611359c2f4f0bb42cc15efc3b2ab791d1ac03091c0913f1ff20c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page