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 Interuniversity 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:

  • Gravel B., Renaux A., Papadimitriou S., Smits G., Nowé A., Lenaerts T. (2024) Prioritization of oligogenic variant combinations in whole exomes. Bioinformatics. Volume 40, Issue 4, April 2024, btae184. DOI: https://doi.org/10.1093/bioinformatics/btae184

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.3.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.3-py3-none-any.whl (14.5 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: oligopipe-1.1.3.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.3.tar.gz
Algorithm Hash digest
SHA256 2ac6f68961b1d4f590945cff8ac0149819530d05975571c0729b669f14c08967
MD5 c7088959e1003b84ee8bc55e50f48838
BLAKE2b-256 caaac872a1043e2f4cd4345a031a236c64a6124a6bff58ead712cf9043c0a588

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oligopipe-1.1.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 97bde742f08835aedf648aa4edd9801005ab0a1ee1c2093871a09ff6e22d9f14
MD5 d5c301a92b25517119e8099131f65cef
BLAKE2b-256 09cdeee80de378b9cfb7306440318bbffc16a03ca2adf9703cbe417253195619

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