Skip to main content

Parser to match CYP2D6 parsing reccomendations by PharmVar.

Project description

CYP2D6 Parser

The CYP2D6 parser utilizies the recommendations by PharmVar to organize CYP2D6 haplotypes and genotypes. The parsing and sorting of these haplotypes appears simple but many edge cases exist. This tool helps to facillitate the genotype reporting process by providing a standardized approach for reporting haplotypes.

Current tool outputs supported:

  1. Aldy
  2. Cyrius
  3. PyPGx
  4. Stargazer - In Progress
  5. StellarPGx

Installation

Installation can be acheived using pip or any other package manager of your choosing

pip install cyp2d6_parser 

Parsing genotypes

API

import cyp2d6_parser

# Provide a genotype. If a caller is known, you can provide it to aid in some parsing
# otherwise just a genotype is fine too, but a warning will be reported
results = cyp2d6_parser.parse_genotype(genotype="*1/*10+*36")

# Provide a file. If supplying a file or directory, must identify the type of caller used
results = cyp2d6_parser.parse_genotype(file='aldy_results.tsv', caller='aldy')

# Can also provide a directory of files using glob patterns
results = cyp2d6_parser.parse_genotype(dir_='aldy_results/*.tsv', caller='aldy', output_file='results.tsv')


# parse_genotype above will report activity score and phenotype
result = cyp2d6_parser.get_activity_score(genotype='*1/*10+*36')

result = cyp2d6_parser.get_phenotype(genotype='*1/*10+*36')
result = cyp2d6_parser.get_phenotype(activity_score=2)

CLI

python3 -m cyp2d6_parser genotype --genotype_call "*1/*10+*36"

python3 -m cyp2d6_parser --caller aldy genotype --file aldy_results.tsv

python3 -m cyp2d6_parser --caller aldy genotype --dir aldy_results/*.tsv -o results.tsv

python3 -m cyp2d6_parser activity --genotype_call "*1/*10+*36"

python3 -m cyp2d6_parser phenotype --genotype_call "*1/*10+*36"
python3 -m cyp2d6_parser phenotype --activity_score 2

Interpreting output from parse_genotype

  1. sample_id - File name or left blank
  2. genotype_raw - Genotype(s) used as input
  3. genotype - Parsed and organized genotype according to PharmVar reccomendations. Retired alleles are converted to the new allele name (Ex: *57 -> *36). If you would like to report retired alleles, an option is available. Suballeles names are removed (Ex: *4.001 -> *4). If a single genotype cannot be resolved, Indeterminate/Indeterminate is reported.
  4. activity_score - Total activity score for the reported genotype
  5. phenotype - Phenotype based on activity score
  6. copy_number - Total number of copies in genotype only if the genotype is not Indeterminate. The only allele which does not count towards total copy number is *5 (gene deletion).
  7. possible_genotype - If the input genotypes cannot be resolved to a single genotype, all possible genotypes are reported in this field as semicolon delimited.
  8. possible_activity_score - If all possible genotypes resolve to a single activity score, then an activity score is reported
  9. possible_phenotype - If all possible activity scores resolve to a single phenotype, then the phenotype is reported. The activity score field can be blank with a possible phenotype. Ex:
    • possible_genotypes: *1/*1;*1/*10
    • possible_activity_score: not reported because possible values are 2 and 1.25
    • possible_phenotype: CYP2D6 Normal Metabolizer

Bugs and desired features

Please report any bugs and/or desired features to either the github issues page or to andrew.haddad@pitt.edu

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

cyp2d6_parser-2.0.2.tar.gz (13.6 kB view details)

Uploaded Source

Built Distribution

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

cyp2d6_parser-2.0.2-py3-none-any.whl (17.3 kB view details)

Uploaded Python 3

File details

Details for the file cyp2d6_parser-2.0.2.tar.gz.

File metadata

  • Download URL: cyp2d6_parser-2.0.2.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.6

File hashes

Hashes for cyp2d6_parser-2.0.2.tar.gz
Algorithm Hash digest
SHA256 26e318919372e8e0256e9e616c4ada786e33c380c35bb84d9c04d3c312984871
MD5 cd0334fee47a7eed546bfac5f507f3f2
BLAKE2b-256 ad3313decee3aff8f1c8b41c8ff948676899eb8737c9fb85595e6443b6036541

See more details on using hashes here.

File details

Details for the file cyp2d6_parser-2.0.2-py3-none-any.whl.

File metadata

  • Download URL: cyp2d6_parser-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 17.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.6

File hashes

Hashes for cyp2d6_parser-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 616aeb3e7592b72c553b1b86727a4fbf6351a572e9d647a65ea04d82e96e0d94
MD5 0ea0c21ce6f1757969ca7d3334b80dfb
BLAKE2b-256 6f38ab9ad6ab55147e45d82171db8544eb46e0015e6105f5d395a7853f996ec9

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