/rp2paths

RetroPath2.0 to pathways

Primary LanguagePythonMIT LicenseMIT

RP2paths -- RetroPath2.0 to pathways

Anaconda-Server Badge Anaconda-Server Badge

RP2paths extracts the set of pathways that lies in a metabolic space file outputed by the RetroPath2.0 workflow. RetroPath2.0 is freely accessible on myExperiment.org at: https://www.myexperiment.org/workflows/4987.html.

Installation

Prerequisites

rp2paths relies on several packages (rdkit, cairo) and binaries (java, graphviz) that can't be installed directly with pip. Please install them before pursuing the rp2paths set up:

# from a new <myenv> conda environment
conda create --name <myenv> python=3
conda install --yes --channel rdkit rdkit cairo
conda install --yes --channel cyclus java-jre
conda install --yes --channel conda-forge graphviz

From pip

# installation in an already existing <myenv> environment (see prerequisites)
conda activate <myenv>
python -m pip install rp2paths

From conda

# installation in an already existing <myenv> environment (see prerequisites)
conda activate <myenv>
conda install -c brsynth rp2paths

Usage

From CLI

Once a scope has been produced by RetroPath2.0, a typical command line for extracting the pathways from the results is

python -m rp2paths all <retropath2_scope> [--outdir <outdir>]

where:

  • all specify that all the tasks needed for retrieving pathways will be executed at once.
  • <retropath2_scope> is the metabolic space outputted by the RetroPath2.0 workflow.
  • --outdir <outdir> specify the directory in which all files will be outputted.

In the <outdir> folder, the complete set of pathways enumerated will be written in the out_paths.csv file. In addition, for each pathway there will be a .dot file (.dot representation of the graph) and a .svg file (.svg depiction of the pathway).

Available options

Additional options are described in the embedded help:

# List of possible modes
python -m rp2paths -h

# List of options for the all-in-one mode
python -m rp2paths all -h

Examples

Precomputed results (outputted by RetroPath2.0) are provided in the examples folder for few compounds (carotene, naringenin, pinocembrin, violacein).

Below are the command lines for generating pathways that lie in naringenin result file:

source activate <myenv>
python -m rp2paths all examples/naringenin/rp2-results.csv --outdir examples/naringenin/outdir

For developers

Development installation

After a git clone:

cd <repository>
conda create --name <dev_env> python=3
conda install --name <dev_env> --yes --channel rdkit rdkit cairo
conda install --name <dev_env> --yes --channel cyclus java-jre
conda install --name <dev_env> --yes --channel conda-forge graphviz flake8
conda install --name <dev_env> --yes pytest
conda develop --name <dev_env> .

Tests

Using Docker containers with:

cd tests
./test-in-docker.sh [file_to_test]

Without using Docker containers:

cd tests
conda activate <dev_env>
pytest [file_to_test]

How to cite RP2paths?

Please cite:

Delépine B, Duigou T, Carbonell P, Faulon JL. RetroPath2.0: A retrosynthesis workflow for metabolic engineers. Metabolic Engineering, 45: 158-170, 2018. DOI: https://doi.org/10.1016/j.ymben.2017.12.002

Licence

RP2paths is released under the MIT licence. See the LICENCE.txt file for details.