HyDe: hybridization detection using phylogenetic invariants¶
HyDe is a software package that detects hybridization in phylogenomic
data sets using phylogenetic invariants. The primary interface for HyDe is a Python
phyde (Pythonic Hybridization Detection).
phyde provides a suite of tools for performing hypothesis tests on triples of taxa
to detect hybridization. To ensure that the necessary
phyde are available, we suggest using a Python distribution such
To facilitate analyses using the Python module, three scripts are provided to conduct hybridization detection analyses directly from the command line:
run_hyde.py: runs a standard hybridization detection analysis on all triples in all directions. Results are also filtered based on whether there is significant evidence for hybridization.
individual_hyde.py: tests each individual within a putative hybrid population using a list of specified triples specified.
bootstrap_hyde.py: conducts bootstrap resampling of the individuals within the putative hybrid lineages for each specified triple.
These last two scripts need to be given a three column table of triples (P1, Hybrid, P2) that you wish to test:
sp1 sp2 sp3 sp1 sp3 sp4 sp3 sp4 sp5 . . .
You can also use a results file from a previous analysis as a triples file.
For example, you can use the filtered results from the
run_hyde.py script so that
you only run analyses on triples that have significant levels of hybridization.
If you only have a few hypotheses that you want to test, then you can also pass
a triples file to
run_hyde.py and it will only test those hypotheses rather than
Multithreaded versions of these scripts are also available (
Make sure you have the
multiprocess module installed before you use them:
pip install multiprocess.
If you have questions about running HyDe, please feel free to use the gitter chatroom to get help:
If you have a problem while running HyDe and you think it may be a bug, please consider filing an issue on GitHub:
- Conduct hypothesis tests using multiple individuals per population.
- Test each individual within a putative hybrid lineage to assess if hybridization is uniform.
- Test all possible triples of taxa and process results from within Python.
- Bootstrap individuals within taxa to assess patterns of hybrid speciation vs. introgression.
- Visualize the distributions of various quantities (Test Statistic, Hybridization Parameter, D-Statistic) using bootstrap replicates.
- Calculate the D-Statistic (ABBA-BABA) using site pattern counts returned during a hypothesis test.