Swiss army knife of HLA Nomenclature

HLA-A Background

py-ard works with Python 3.8 and higher.

HLA-A Background


ARD reduction for HLA in Python

Human leukocyte antigen (HLA) genes encode cell surface proteins that are important for immune regulation. Exons encoding the Antigen Recognition Domain (ARD) are the most polymorphic region of HLA genes and are important for donor/recipient HLA matching. The history of allele typing methods has played a major role in determining resolution and ambiguity of reported HLA values. Although HLA nomenclature has not always conformed to the same standard, it is now defined by The WHO Nomenclature Committee for Factors of the HLA System. py-ard is aware of the variation in historical resolutions and grouping and is able to translate from one representation to another based on alleles published quarterly by IPD/IMGT-HLA.

HLA-B Background

Open Source

Freely available to use with source

Install from

HLA-C Background

Reduction Types

Use py-ard to reduce and convert HLA typings to and from various representations.

Reduction Type Description
G Reduce to G Group Level
P Reduce to P Group Level
lg Reduce to 2 field ARD level (append g)
lgx Reduce to 2 field ARD level
W Reduce/Expand to 3 field WHO nomenclature level
exon Reduce/Expand to exon level
U2 Reduce to 2 field unambiguous level
S Reduce to Serological level

Using py-ard

py-ard can reduce typings from NMDP multiple allele code (MAC) designations, XX codes, as well as serologic nomenclature. Typings represented in GL String format is also well-supported.

Using py-ard in Python

import pyard
ard = pyard.init()

Import pyard and make reduction happen in your own Python code.

Using py-ard in R

pyard <- import('pyard')
ard <- pyard$init()

Import pyard library and make reduction happen in your own R code.

Command Line Tools

Varieties of Command Line Tools to reduce, manipulate local cache from the Terminal

Batch Reduce

Do you have CSV files you need to reduce ? pyard-reduce-csv to the rescue.

Web Service

Deploy it as a web service so other web applications and services can use it.

Deploy using Docker

Deploy to Kubernetes Cluster or other container services as a Docker Container.

Join Us

Help us improve py-ard by contributing code, creating issues and providing feedback.

Contribute Code

See how you can contribution code.

Create An Issue

Tell us any issues you find or new features you want to see in py-ard