Skip to main content

VICC normalization routine for variants

Project description

Variant Normalization

Services and guidelines for normalizing variant terms

Backend Services

Variant Normalization relies on some local data caches which you will need to set up. It uses pipenv to manage its environment, which you will also need to install.

Installation

Variant Normalization relies on seqrepo, which you must download yourself.

From the variant directory of the repository:

pipenv sync
pip install seqrepo
mkdir -p data/seqrepo
seqrepo -r data/seqrepo pull -i 2021-01-29
sudo chmod -R u+w data/seqrepo
cd data/seqrepo
seqrepo_date_dir=$(ls -d */)
sudo mv $seqrepo_date_dir latest

Variant Normalizer also uses uta.

To install:

uta_v=uta_20180821
docker pull biocommons/uta:$uta_v
export UTA_DB_URL=postgresql://anonymous@localhost:5432/uta/uta_20180821
docker-compose -f docker-compose.yml up

Data

Variant Normalization uses Ensembl BioMart to retrieve variant/data/transcript_mappings.tsv. We currently use Human Genes (GRCh38.p13) for the dataset and the following attributes we use are: Gene stable ID, Gene stable ID version, Transcript stable ID, Transcript stable ID version, Protein stable ID, Protein stable ID version, RefSeq match transcript (MANE Select), Gene name.

image

Setting up Gene Normalizer

Variant Normalization normalize endpoint relies on data from Gene Normalization. To install:

pip install gene-normalizer

To setup, follow the instructions from the Gene Normalization README.

You must have the Gene Normalizer DynamoDB running for the variant normalize endpoint to work.

Init coding style tests

Code style is managed by flake8 and checked prior to commit.

We use pre-commit to run conformance tests.

This ensures:

  • Check code style
  • Check for added large files
  • Detect AWS Credentials
  • Detect Private Key

Before first commit run:

pre-commit install

Testing

From the root directory of the repository:

pytest tests/

Starting the Variant Normalization Service

gene-normalizers dynamodb must be running and run the following:

docker-compose -f docker-compose.yml up

From the root directory of the repository:

uvicorn variant.main:app --reload

Next, view the OpenAPI docs on your local machine: http://127.0.0.1:8000/variant

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

variant-normalizer-0.2.4.tar.gz (69.7 kB view hashes)

Uploaded Source

Built Distribution

variant_normalizer-0.2.4-py3-none-any.whl (7.8 MB 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