Skip to main content

A Boolean Algebra for Genetic Variants

Project description

mutalyzer-algebra

A Boolean Algebra for Genetic Variants

A set of Boolean relations: equivalence; containment, i.e., either a variant is fully contained in another or a variant fully contains another; overlap, i.e., two variants have (at least) one common element; and disjoint, i.e., no common elements that allows for a comprehensive classification of the relation for every pair of variants by taking all minimal Longest Common Subsequence (LCS) alignments into account.

Jonathan K. Vis, Mark A. Santcroos, Walter A. Kosters and Jeroen F.J. Laros. "A Boolean Algebra for Genetic Variants." In: Bioinformatics (2023).

Installation

Use pip to install from the Python Package Index (PyPI).

python -m pip install mutalyzer-algebra

Or directly from GitHub for development (after cloning in an active virtual environment).

python -m pip install --upgrade --editable .[dev]

Testing

Run the tests.

python -m coverage run -m pytest

Usage

Use the command-line interface.

algebra --reference "AAAAA" compare --lhs-hgvs "1_2insTA" --rhs-hgvs "2_3insT"

Or as a Python package.

from algebra import compare
from algebra.variants import parse_hgvs


reference = "AAAAA"
lhs = parse_hgvs("1_2insTA")
rhs = parse_hgvs("2_3insT")

# returns: Relation.DISJOINT
compare(reference, lhs, rhs)


reference = "CATATATC"
lhs = parse_hgvs("2_7AT[4]")  # observed: CATATATATC
rhs = parse_hgvs("5_6insT")   # observed: CATATTATC

# returns: Relation.CONTAINS
compare(reference, lhs, rhs)

Extracting variants from sequences.

from algebra.extractor import extract, to_hgvs

reference = "CATATATC"
observed = "CATATATATC"

# returns: 2_7AT[4]
to_hgvs(list(extract(reference, observed)), reference)

See Also

A web interface with integration with Mutalyzer: Mutalyzer Algebra

Mutalyzer Algebra 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

mutalyzer-algebra-1.3.0.tar.gz (18.7 kB view details)

Uploaded Source

File details

Details for the file mutalyzer-algebra-1.3.0.tar.gz.

File metadata

  • Download URL: mutalyzer-algebra-1.3.0.tar.gz
  • Upload date:
  • Size: 18.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.6

File hashes

Hashes for mutalyzer-algebra-1.3.0.tar.gz
Algorithm Hash digest
SHA256 11979b4020032a23668523a180700f1b5c083fe62a0a71fda71974db8ce3cc56
MD5 e0106c20973836fcde082b8f03f027da
BLAKE2b-256 b22dde7f5fcd610e13c52ab8b5cb59125b8d9b5bd5b6e46a08521ceea382f8ad

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