Skip to main content

PARLE: Path Analysis, Reconciliation, and Label Evaluation

Project description

PARLE: Path Analysis, Reconciliation, and Label Evaluation

This tool computes the path-label reconciliation (PLR) dissimilarity measure. (see abstract).

Reference: López Sánchez A., Ramírez-Rafael J. A., Flores Lamas A., Hernandez-Rosales M., Lafond M. (2024) The Path-Label Reconciliation (PLR) Dissimilarity Measure for Gene Trees (currently under review at the WABI 2024 conference).

Installation

pip install parle

Synopsis of the tool

This code is a command-line tool designed to generate and compare reconciled gene trees with a given species tree, accounting for evolutionary events. It uses a proposed semi-metric PLR to quantify differences between reconciled gene trees, considering discrepancies in tree topology, gene-species mapping, and speciation/duplication events.

This tool supports benchmarking and validation by simulating reconciliations and comparing results with metrics like LRF and ELRF. The tool aims to enhance phylogenetic reconciliation by providing a refined and efficient method for comparing reconciled gene trees.

The tool can be used with the following syntax:

# Compute disimilarity
python -m parle gene_trees species_tree <optional arguments>

# Compute distance
python -m parle.simulate_reconciliations species_tree n_genes n_recons <optional arguments>

For detailed usage information, you can access the help documentation of the modules:

python -m parle -h
python -m parle.simulate -h

Tutorial

We will see how to generate and analyze datasets for 10 species, maximum 2 gene per species, and 20 gene trees/pairs of gene trees. These numbers can be modified.

The species tree can be simulated by PARLE or can be inputed as a .nhx file.

To Generate Data

Generate a list of reconciliations with the same species tree and set of genes for all the reconciliations:

python -m parle.simulate 10 2 20

Output files: plr.species_tree.list.nhx, plr.random_reconciliations.list.tsv


Generate pairs of reconciliations with the same species tree for all the reconciliations and pair-specific sets of genes:

python -m parle.simulate 10 2 20 -m pairs

Output files: plr.species_tree.pairs.nhx, plr.random_reconciliations.pairs.tsv.


To use an external species tree use the name of the file instead of 5, an example, if you have a file species_tree.nhx with the content ((((((16,17)15,14)7,6)5,((10,11)9,8)4)3,((18,19)13,12)2)1)0;, then you can use the commands:

python -m parle.simulate species_tree.nhx 1 10
python -m parle.simulate species_tree.nhx 1 10 -m pairs

To Compute Distances

Compute distances of pairs of trees sorted by rows:

python -m parle plr.random_reconciliations.list.tsv plr.species_tree.list.nhx

Compute distances for all possible pairs of gene trees in a list:

python -m parle plr.random_reconciliations.list.tsv plr.species_tree.list.nhx -m all_vs_all

Visualization

  • For gene tree visualization we recomend itol.
  • For trees reconciliation we recommend REvolutionH-tl.

Additional Information

  • The tool uses the PLR metric, which is designed to compare reconciled gene trees by taking into account all three components of reconciliations (tree topology, gene-species map, and event labeling) as well as duplication clusters.

  • The metric is linear-time computable, making it suitable for large datasets.

  • For more detailed documentation and examples, please refer to the project documentation within the repository.

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

parle-0.0.2.tar.gz (11.3 kB view hashes)

Uploaded Source

Built Distribution

parle-0.0.2-py3-none-any.whl (11.3 kB view hashes)

Uploaded Python 3

Supported by

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