Skip to main content

GenPhylo generates synthetic alignments on a phylogenetic tree with given branch lengths.

Project description

GenPhylo: Generating Data on Phylogenetic trees

Authors: Marta Casanellas, Martí Cortada, Adrià Diéguez


GenPhylo generates synthetic alignments on a phylogenetic tree with given branch lengths.

The user has two options depending on which arguments are chosen. Both of them need to take as input a tree in the Newick format (with nodes of any degree) with annotated branch lengths.

▶️ Option 1: Generate $N$ FASTA files with alignments of length $L$ given a Newick tree

The program generates a set of transition matrices according to the input tree <tree.txt> and its branch lengths. From these matrices, $N$ different alignments of length $L$ are simulated A root distribution input parameter also needs to be passed: we can impose a random distribution or a specific one. The outputs (a .txt file with the transition matrices and a .tar with the .FASTA files corresponding to the simulated alignments) can be named using the <experiment_name> input parameter and are saved in the output_files directory

An example with $N = 5$ and $L=1000$:

Using a random root distribution:

python3 GenPhylo.py <tree.txt> 5 1000 random <experiment_name>

Using a specific root distribution (note that A,G,C,T must be values that sum up to 1)

python3 GenPhylo.py <tree.txt> 5 1000 "[A,G,C,T]" <experiment_name>

▶️ Option 2: Generate FASTA files with alignments of given lengths $L_1,...,L_d$ given a Newick tree

Working very similarly as the first option, the second one allows to generate aligments of different length. The program generates a set of transition matrices according to the input tree <tree.txt> and its branch lengths and from these matrices, alignments of length $L_1,...,L_d$ are generated (we can add as many lengths as alignments we want to generate. ). The outputs are saved the same way as described for Option 1.

An example, for $L_1 = 500$, $L_2 = 1000$ and $L_3 = 10000$

Using a random root distribution:

python3 GenPhylo.py <tree.txt> L500 L1000 L10000 random <experiment_name>

Using a specific root distribution (note that A,G,C,T must be values that sum up to 1)

python3 GenPhylo.py <tree.txt> L500 L1000 L10000 "[A,G,C,T]" <experiment_name>

⚠️ Note that in this case, sequence lengths are preceeded by an $L$.


This repository includes the file IQ-TREE_analysis.pdf that describes how we verified the precision of our alignments simulator by using the phylogenetic software IQ-TREE.


⚙️ This software is developped under de GNU General Public License v3

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

genphylo-0.1.4.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

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

genphylo-0.1.4-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file genphylo-0.1.4.tar.gz.

File metadata

  • Download URL: genphylo-0.1.4.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.4

File hashes

Hashes for genphylo-0.1.4.tar.gz
Algorithm Hash digest
SHA256 bf914b0861d2a882824783bd5c4a0b987e6a07da7364da065f8231a1d14a1a37
MD5 ea10b12625e444e92f2e3f9fba638376
BLAKE2b-256 f4b62f0f7c93cc200ade562baccc9d3354eafe1099bd5c7ba56883dab3463900

See more details on using hashes here.

File details

Details for the file genphylo-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: genphylo-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.4

File hashes

Hashes for genphylo-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 ffe6027091dc369392120433c6975b6c3daef20df527cbe60ed83580bef98548
MD5 5f96b82e634935aab7a620d0bea53a30
BLAKE2b-256 3f534cc684169ec2a2a387eda224dd6e82f7856f85af15e1182ff5d95417385a

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