Skip to main content

HYphlow

PyPI version Python 3.8+ License: MIT

HYphlow is a GUI-based bioinformatics pipeline that supports evolutionary selection pressure analysis using HyPhy. It provides a structured workflow for species label standardization, tree pruning, data reconciliation, branch annotation, batch HyPhy execution, and result extraction from HyPhy JSON output files.


Table of Contents


Setup & Installation

HYphlow requires Python 3.8+ and HyPhy. You can either install the required dependencies into an existing Conda environment or create a clean environment for HYphlow.

Option 1: Existing Conda Environment

Use this option if you already have a Conda environment activated and want to add the required HYphlow dependencies:

conda env update -f https://raw.githubusercontent.com/hellojung0810/Schott_lab_HYphlow/refs/heads/main/environment.yml
pip install hyphlow

Option 2: New Conda Environment

Use this option to create a clean environment for HYphlow:

conda env create -f https://raw.githubusercontent.com/hellojung0810/Schott_lab_HYphlow/refs/heads/main/environment.yml
conda activate hyphlow_env
pip install hyphlow

Workflow & Usage

Once installed, verify the setup and launch the graphical interface by running:

hyphlow

The HYphlow interface guides users through four sequential modules that support data preparation, branch annotation, HyPhy execution, and result summarization.

1. Data Preparation

Prepares standardized, and reconciled input files before evolutionary selection analysis.

  • Species Label Standardization: Cross-references CSV metadata with the NCBI taxonomy database and standardizes FASTA headers and Newick leaf names. It extracts clean species or subspecies labels from longer sequence headers.

  • Tree Pruning: Generates gene-specific Newick trees by pruning a master species tree to match the taxa present in each FASTA alignment.

  • Data Reconciliation: Checks for missing or mismatched taxa across CSV, FASTA, and Newick files.

2. Tree Annotation

Automates foreground branch annotation based on trait metadata.

  • Identifies candidate foreground branches using parsimony and likelihood-based methods.
  • Outputs foreground-annotated Newick trees and annotated SVG preview images.

3. HyPhy Execution

Supports batch execution of HyPhy analyses across multiple genes.

  • Automatically matches FASTA alignments with their corresponding Newick trees.
  • Configures CPU and thread settings for parallel execution.
  • Generates an editable bash script for running selected HyPhy models.

4. Results Summary

Extracts and organizes results from HyPhy JSON output files.

  • Allows users to drag and drop multiple HyPhy .json output files into the interface.
  • Extracts key statistics such as p-values and LRT scores.
  • Compiles extracted results into a single organized Excel workbook.

Supported HyPhy Models

HYphlow currently supports data preparation, execution, and result summarization for the following models:


Acknowledgements & Dependencies

HYphlow is built using several open-source tools and libraries. If you use HYphlow in your research, please cite HYphlow alongside the relevant core software used in your analysis:

Core Software

  • HyPhy: Kosakovsky Pond, S. L., et al. (2020). HyPhy 2.5—A Customizable Platform for Evolutionary Hypothesis Testing Using Phylogenies. Molecular Biology and Evolution, 37(1), 295–299.
  • ETE 3: Huerta-Cepas, J., Serra, F., & Bork, P. (2016). ETE 3: Reconstruction, Analysis, and Visualization of Phylogenomic Data. Molecular Biology and Evolution, 33(6), 1635–1638.
  • pandas: The pandas development team. (2020). pandas-dev/pandas: Pandas [Computer software]. Zenodo.
  • PyQt5: Riverbank Computing Limited. (2026). PyQt5: Python bindings for the Qt cross-platform application framework.

Evolutionary Models

  • BUSTED: Murrell, B., et al. (2015). Gene-Wide Identification of Episodic Selection. Molecular Biology and Evolution, 32(5), 1365–1371.
  • aBSREL: Smith, M. D., et al. (2015). Less Is More: An Adaptive Branch-Site Random Effects Model for Evolutionary Trajectories. Molecular Biology and Evolution, 32(5), 1342–1353.
  • RELAX: Wertheim, J. O., et al. (2015). RELAX: Detecting Relaxed Selection in a Phylogenetic Framework. Molecular Biology and Evolution, 32(3), 820–832.
  • FEL & SLAC: Kosakovsky Pond, S. L., & Frost, S. D. W. (2005). Not So Different After All: A Comparison of Methods for Detecting Amino Acid Sites Under Selection. Molecular Biology and Evolution, 22(5), 1208–1222.
  • MEME: Murrell, B., et al. (2012). Detecting Individual Sites Subject to Episodic Diversification. PLoS Genetics, 8(7), e1002764.
  • FUBAR: Murrell, B., et al. (2013). FUBAR: A Fast, Unconstrained Bayesian AppRoximation for Inferring Selection. Molecular Biology and Evolution, 30(5), 1196–1205.

Author & Credits

HYphlow was designed and developed by Hyejung (Jay) Kwon at the Schott Lab: Evolution and Development of Vertebrate Visual Systems, under the supervision of Dr. Ryan K Schott.

Logo designed by Taegan Perez.

Special thanks to the members of the Schott Lab for their feedback and support throughout the development of this project.

If you use this pipeline in your research, please link back to this repository and cite or acknowledge HYphlow where appropriate.


Support & Contribution

Bug reports, feature requests, and code contributions are welcome through GitHub Issues and Pull Requests.


License

HYphlow is distributed under the MIT License. See the LICENSE file for details.

Download files

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

Source Distribution

hyphlow-1.0.5.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

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

hyphlow-1.0.5-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file hyphlow-1.0.5.tar.gz.

File metadata

  • Download URL: hyphlow-1.0.5.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for hyphlow-1.0.5.tar.gz
Algorithm Hash digest
SHA256 b01eb27e55f583ac2c5d1027e5e16c74fa9bd27de8c3e9e356e9e3f08bbeb344
MD5 ca880a346d690c5b2b2ee204b0006aae
BLAKE2b-256 66a0f3fef5ab89053dc47af6ffcb571e59a4fea3e56ce85e3a6ef95aa4e5485d

See more details on using hashes here.

File details

Details for the file hyphlow-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: hyphlow-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for hyphlow-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 95047ecee580ac702a116fc4435994b74bc0e5acdbdc676cd0bf6461f676b46b
MD5 4a551bd514145b6fd179bdb1ee95f30e
BLAKE2b-256 c39bc62009a569c97780660290d6a934aa620fa5e0fd719bbfbd83cc5db29592

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.5 This release

2 files

1.0.4

2 files

1.0.3

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page