tidytcells.mh

Functions to manage MH gene data.

Functions

tidytcells.mh.get_chain(gene: str | None = None, suppress_warnings: bool = False) str[source]

Given a standardized MH gene name, detect whether it codes for an alpha chain, beta chain, or beta-2 microglobulin (B2M) molecule.

Note

This function currently only recognises HLA (human leucocyte antigen or Homo sapiens MH), and not MH from other species.

Parameters:
  • gene (str) – Standardized MH gene name

  • suppress_warnings (bool) – Disable warnings that are usually emitted when chain classification fails. Defaults to False.

Returns:

'alpha' or 'beta' if gene is recognised and its chain is known, else None.

Return type:

Union[str, None]

tidytcells.mh.get_class(gene: str | None = None, suppress_warnings: bool = False) int[source]

Given a standardized MH gene name, detect whether it comprises a class I (MH1) or II (MH2) receptor.

Note

This function currently only recognises HLA (human leucocyte antigen or Homo sapiens MH), and not MH from other species.

Parameters:
  • gene (str) – Standardized MH gene name

  • suppress_warnings (bool) – Disable warnings that are usually emitted when classification fails. Defaults to False.

Returns:

1 or 2 if gene is recognised and its class is known, else None.

Return type:

Union[int, None]

tidytcells.mh.query(species: str = 'homosapiens', precision: str = 'allele', contains_pattern: str | None = None) FrozenSet[str][source]

Query the list of all known MH genes/alleles.

Note

tidytcells’ knowledge of MH alleles is limited, especially outside of humans. tidytcells will allow you to query HLA alleles up to the level of the protein (first two allele designators), but that is the highest resolution available. For Mus musculus, there is currently only support for gene-level querying.

Parameters:
  • species (str) – Species to query (see above for supported species). Defaults to "homosapiens".

  • precision (str) – The level of precision to query. allele will query from the set of all possible alleles. gene will query from the set of all possible genes. Defaults to allele.

  • contains_pattern (str) – An optional regular expression string which will be used to filter the query result. If supplied, only genes/alleles which contain the regular expression will be returned. Defaults to None.

Returns:

The set of all genes/alleles that satisfy the given constraints.

Return type:

FrozenSet[str]

tidytcells.mh.standardise(*args, **kwargs)[source]

Alias for tidytcells.mh.standardize().

tidytcells.mh.standardize(gene: str | None = None, species: str = 'homosapiens', precision: str = 'allele', on_fail: str = 'reject', suppress_warnings: bool = False) tuple[source]

Attempt to standardize an MH gene name to be IMGT-compliant.

Note

This function will only verify the validity of an MH gene/allele up to the level of the protein. Any further precise allele designations will not be verified, apart from the requirement that the format (colon-separated numbers) look valid. The reasons for this is firstly because new alleles at that level are added to the IMGT list quite often and so accurate verification is difficult, secondly because people rarely need verification to such a precise level, and finally because such verification costs more computational effort with diminishing returns.

Parameters:
  • gene (str) – Potentially non-standardized MH gene name.

  • species (str) – Species to which the MH gene belongs (see above for supported species). Defaults to "homosapiens".

  • precision (str) – The maximum level of precision to standardize to. "allele" standardizes to the maximum precision possible. "protein" keeps allele designators up to the level of the protein. "gene" standardizes only to the level of the gene. Defaults to "allele".

  • on_fail (str) – Behaviour when standardization fails. If set to "reject", returns None on failure. If set to "keep", returns the original input. Defaults to "reject".

  • suppress_warnings (bool) – Disable warnings that are usually emitted when standardisation fails. Defaults to False.

Returns:

If the specified species is supported, and gene could be standardized, then return the standardized gene name. If species is unsupported, then the function does not attempt to standardize, and returns the unaltered gene string. Else follows the behvaiour as set by on_fail.

Return type:

Union[str, None]