Skip to main content

ARD reduction for HLA with Python

Project description

py-ard

https://img.shields.io/pypi/v/py-ard.svg Documentation Status

ARD reduction for HLA with Python

Install from source

python3 -m venv venv
source venv/bin/activate

python setup.py install

Install from PyPi

pip install py-ard

Testing

To run behavior-driven development (BDD) tests locally via the behave framework, you’ll need to set up a virtual environment. See Install from source

# Install test dependencies
pip install --upgrade pip
pip install -r test-requirements.txt

# Running Behave and all BDD tests
behave

Example

import pyard

# The cache size of pre-computed reductions can be changed
# from the default of 1000
pyard.max_cache_size = 1_000_000

# Initialize ARD object with a version of IMGT HLA database
ard = pyard.ARD(3290)

# You can specify a data directory for temp files
# ard = pyard.ARD('3290', data_dir='/tmp/py-ard')


# Initialize with latest IMGT HLA database
ard = pyard.ARD()

# You can choose to refresh the MAC code for current ARD db version
# ard.refresh_mac_codes()

# You can reinstall a particular IMGT database
# pyard-import --db-version 3340 --re-install
#
# Reduce Allele
#
allele = "A*01:01:01"

ard.redux(allele, 'G')
# >>> 'A*01:01:01G'

ard.redux(allele, 'lg')
# >>> 'A*01:01g'

ard.redux(allele, 'lgx')
# >>> 'A*01:01'

#
# Reduce GL String
#
ard.redux_gl("A*01:01/A*01:01N+A*02:AB^B*07:02+B*07:AB", "G")
# 'B*07:02:01G+B*07:02:01G^A*01:01:01G+A*02:01:01G/A*02:02'

# py-ard can also reduce serology based typings
ard.redux_gl('B14', 'lg')
# >>> 'B*14:01g/B*14:02g/B*14:03g/B*14:04g/B*14:05g/B*14:06g/B*14:08g/B*14:09g/B*14:10g/B*14:11g/B*14:12g/B*14:13g/B*14:14g/B*14:15g/B*14:16g/B*14:17g/B*14:18g/B*14:19g/B*14:20g/B*14:21g/B*14:22g/B*14:23g/B*14:24g/B*14:25g/B*14:26g/B*14:27g/B*14:28g/B*14:29g/B*14:30g/B*14:31g/B*14:32g/B*14:33g/B*14:34g/B*14:35g/B*14:36g/B*14:37g/B*14:38g/B*14:39g/B*14:40g/B*14:42g/B*14:43g/B*14:44g/B*14:45g/B*14:46g/B*14:47g/B*14:48g/B*14:49g/B*14:50g/B*14:51g/B*14:52g/B*14:53g/B*14:54g/B*14:55g/B*14:56g/B*14:57g/B*14:58g/B*14:59g/B*14:60g/B*14:62g/B*14:63g/B*14:65g/B*14:66g/B*14:68g/B*14:70Qg/B*14:71g/B*14:73g/B*14:74g/B*14:75g/B*14:77g/B*14:82g/B*14:83g/B*14:86g/B*14:87g/B*14:88g/B*14:90g/B*14:93g/B*14:94g/B*14:95g/B*14:96g/B*14:97g/B*14:99g/B*14:102g'

Command Line Tools

# Import the latest IMGT database
$ pyard-import
Created Latest py-ard database

# Import particular version of IMGT database
$ pyard-import --db-version 3.29.0
Created py-ard version 3290 database

# Import particular version of IMGT database and
# replace the v2 to v3 mapping table
$ pyard-import --db-version 3.29.0 --v2-to-v3-mapping map2to3.csv
Created py-ard version 3290 database
Updated v2_mapping table with 'map2to3.csv' mapping file.

# Replace the Latest IMGT database with V2 mappings
$ pyard-import --v2-to-v3-mapping map2to3.csv

# Refresh the MAC for the specified version
$ pyard-import --db-version 3450 --refresh-mac

# Reduce a gl string from command line
$ pyard --gl 'A*01:AB' -r lgx
A*01:01/A*01:02

$ pyard --gl 'DRB1*08:XX' -r G
DRB1*08:01:01G/DRB1*08:02:01G/DRB1*08:03:02G/DRB1*08:04:01G/DRB1*08:05/ ...

$ pyard -v 3290 --gl 'A1' -r lgx
A*01:01/A*01:02/A*01:03/A*01:06/A*01:07/A*01:08/A*01:09/A*01:10/A*01:12/ ...

History

0.0.1 (2018-02-12)

  • First release on PyPI.

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

py-ard-0.6.7.tar.gz (61.4 kB view details)

Uploaded Source

Built Distribution

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

py_ard-0.6.7-py2.py3-none-any.whl (50.5 kB view details)

Uploaded Python 2Python 3

File details

Details for the file py-ard-0.6.7.tar.gz.

File metadata

  • Download URL: py-ard-0.6.7.tar.gz
  • Upload date:
  • Size: 61.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for py-ard-0.6.7.tar.gz
Algorithm Hash digest
SHA256 4d1011e343dd0a26521062df68c587fb0da823c9a8a93650bad985adf168f14d
MD5 507d77a7006c0f63be77665069d5d9d7
BLAKE2b-256 a7c0cfe3cc23e221b47170d2e681bfa95a4eb678ac475de65d154d0f1aa2ed7b

See more details on using hashes here.

File details

Details for the file py_ard-0.6.7-py2.py3-none-any.whl.

File metadata

  • Download URL: py_ard-0.6.7-py2.py3-none-any.whl
  • Upload date:
  • Size: 50.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for py_ard-0.6.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7603557e1b19cef8579519be91eab2db96d43fc451c75680a0825124d805c8d0
MD5 882e6ab52644d25961ef223e692c5841
BLAKE2b-256 7f1852646eafaaf9d748cb22a709f1b22fb6d0caaab387aaada2139c0bb8b829

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