Skip to main content

Python package for Oligogenic Variant Analysis pipelines

Project description

oligopipe - Python package for Oligogenic Variant Analysis pipelines

This package offers a command-line interface to the Oligogenic Variant Analysis pipelines developed at the Interuniveristy Institute of Bioinformatics in Brussels.

It contains two modules:

Requirements

The package requires Python 3.8-3.10 (currently higher versions are not supported yet).

Additional requirements are specified in the requirements.txt file and automatically satisfied when installing with pip.

Installation

PIP-based installation

The easiest way to install is via the PyPI archive with the command

pip install oligopipe

It is recommended to use a virtual environment for the management of dependencies.

Source-based installation

The source code can be installed by cloning the repository or unpacking from a source code archive and running

pip install .

in the source directory.

For the purposes of testing or development, you may prefer to install as an editable module via PIP by running

pip install -e .

in the source directory.

Usage

Running oligopipe without any arguments or with --help returns the overview of the CLI:

$ oligopipe
usage: oligopipe [-h] {predict,prioritize,config} ...

CLI for oligopipe - oligogenic variant analysis pipelines

optional arguments:
  -h, --help            show this help message and exit

Commands:
  Run oligopipe {command} -h to get detailed help

  {predict,prioritize,config}
    predict             Run a VarCoPP prediction
    prioritize          Run a prioritization analysis with HOP -- under construction
    config              Show the template config file

The individual pipelines are available as submodules of the CLI, and also have dedicated help pages.

Both modules allow using a YAML config file for submitting input parameters and file paths, as well as passing them as command-line arguments (which will be favored if both are given). Running the oligopipe config module will print out a template for that config file.

Running a prediction

Please refer to the docs for extensive documentation on the pipeline logic, the expected inputs and outputs.

Check the available arguments:

$ oligopipe predict --help

The input arguments are grouped in categories:

  • Variant input: VCF or TSV file and genome build (both required), patient's sex
  • Filtering options
  • Output options
  • Database credentials (required; see below)

An example prediction run could then look like this (with database credentials in the config file):

$ oligopipe predict --config path/to/input_config.yaml \
                    --variants-vcf path/to/example_vcf_2_hg19.vcf --genome-build hg19 --patient-sex F \
                    --panel path/to/example_vcf_2_gene_panel.txt \
                    --outdir results 

Which will create the following result files:

  • metadata.json: summary of the pipeline run (inputs, statistics)
  • predictions_with_annotations.json: "raw" output of the predictions, containing also feature annotations
  • predicted_variant_combinations.tsv: table of variant combinations with their predictions
  • predicted_gene_pairs.tsv: table of gene pairs with prediction statistics
  • one file per type of variants that were discarded by the pipeline (if applicable):
    • filtered_variants.txt
    • missing_variants.txt (missing from the annotation database)
    • invalid_zygosity_variants.txt

Note: if no variant combinations remain after the filtering, then the gene pair/variant combination files are not created

Running a prioritization

Not available yet

Annotation database

The pipelines rely on an annotation database for quick retrieval of the variant, gene and gene pair input features for VarCoPP.

We currently offer limited access to such a database for use in this package. If you wish to get access, please email us so that we can provide you with the credentials.

Additional documentation

Extensive documentation (and a FAQ page) about the pipelines can be found in the docs.

Citations

Prediction with VarCoPP(2.0):

  • Versbraegen N., Gravel B., Nachtegael C., Renaux A., Verkinderen E., Nowé A., Lenaerts T., Papadimitriou S. (2023) Faster and more accurate pathogenic combination predictions with VarCoPP2.0. BMC Bioinformatics. 24:179. DOI: https://doi.org/10.1186/s12859-023-05291-3
  • Papadimitriou S., Gazzo A., Versbraegen N., Nachtegael C., Aerts J., Moreau Y., Van Dooren S., Nowé A., Smits G., Lenaerts T. (2019) Predicting disease-causing variant combinations. Proceedings of the National Academy of Sciences. 116(24):11878-11887. DOI: https://doi.org/10.1073/pnas.1815601116

Prioritization with HOP:

  • Currently in review

Support

If you are having issues, please let us know via oligopipe@ibsquare.be.

Known issues

If you run oligopipe on a Macbook with M1 chip, you might get errors related to dependencies psycopg2 and python-magic. Try to resolve them by running:

  • pip uninstall psycopg2 and then pip install psycopg2-binary
  • pip install python-magic-bin

License

The package is licensed under the MIT license.

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

oligopipe-1.1.0.tar.gz (14.1 MB view details)

Uploaded Source

Built Distribution

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

oligopipe-1.1.0-py3-none-any.whl (14.5 MB view details)

Uploaded Python 3

File details

Details for the file oligopipe-1.1.0.tar.gz.

File metadata

  • Download URL: oligopipe-1.1.0.tar.gz
  • Upload date:
  • Size: 14.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.18

File hashes

Hashes for oligopipe-1.1.0.tar.gz
Algorithm Hash digest
SHA256 038dc19c19f7b462e853c0aedb78e8271483f0abd61185c6182bb7a5966b9c21
MD5 eb0edbcb7cfd4fa87d5f7a5990c0d5eb
BLAKE2b-256 4157b20f64dd4a6b9470f5207c48afbd4a598b32362178fd9226a256cdc00788

See more details on using hashes here.

File details

Details for the file oligopipe-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: oligopipe-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.18

File hashes

Hashes for oligopipe-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b0cf7a3258daacc7229daab60c13fb0fc95080bfb1b9546032968f0175a334b9
MD5 9aac2f8e7d84ae06efa91a08f7093321
BLAKE2b-256 1dc047a59354b2cb9a7ad723634cc5734c531f4d5cc6ac6ef6ac94baa460fcf9

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