Skip to main content

Alignment is a native Python library for generic sequence alignment. It is useful in cases where your alphabet is arbitrarily large and you cannot use traditional biological sequence analysis tools. It supports global and local pairwise sequence alignment. I also plan to add support for profile-profile alignments, but who knows when.

Installation

You can install the most recent release using pip:

pip install alignment

Usage

Typical usage looks like this:

from alignment.sequence import Sequence
from alignment.vocabulary import Vocabulary
from alignment.sequencealigner import SimpleScoring, GlobalSequenceAligner

# Create sequences to be aligned.
a = Sequence('what a beautiful day'.split())
b = Sequence('what a disappointingly bad day'.split())

# Create a vocabulary and encode the sequences.
v = Vocabulary()
aEncoded = v.encodeSequence(a)
bEncoded = v.encodeSequence(b)

# Create a scoring and align the sequences using global aligner.
scoring = SimpleScoring(2, -1)
aligner = GlobalSequenceAligner(scoring, -2)
score, encodeds = aligner.align(aEncoded, bEncoded, backtrace=True)

# Iterate over optimal alignments and print them.
for encoded in encodeds:
    alignment = v.decodeSequenceAlignment(encoded)
    print alignment
    print 'Alignment score:', alignment.score
    print 'Percent identity:', alignment.percentIdentity()
    print

TODO List

  • Profile-profile alignment is not working yet.

Metadata

Release files for alignment 1.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for alignment 1.0.7
File Size Uploaded
alignment-1.0.7.tar.gz 7.0 kB Details

Release files / alignment-1.0.7.tar.gz

Download URL alignment-1.0.7.tar.gz
Size 7.0 kB
Tags Source
SHA-256 checksum
How to use checksums
5d9134f7680ed0755c2f09e4a92cc334754c86733436c5f7db9c55d7cdd5c8db
BLAKE2b-256 checksum
How to use checksums
2d1fea9000c267c2f9ea6709b5420176c9aba8272827b96e557ee841e0acfe55
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

1.0.10

1 release file

1.0.9

2 release files

1.0.8

1 release file

This release

1.0.7 This release

1 release file

1.0.6

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

2 release files

1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page