Skip to main content

Native Python library for generic sequence alignment.

Project description

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.

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

alignment-1.0.9.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

alignment-1.0.9.linux-x86_64.tar.gz (14.9 kB view details)

Uploaded Source

File details

Details for the file alignment-1.0.9.tar.gz.

File metadata

  • Download URL: alignment-1.0.9.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for alignment-1.0.9.tar.gz
Algorithm Hash digest
SHA256 2f481fbdc60a57ebfab01c61a1f6e0bed6548a3c268965c632f4d5db6f79cbc8
MD5 be01d2711f34a247db886984149b0852
BLAKE2b-256 d427d69910947e0f790ed69a9447cab65ffab76ccbd977eeb6e5e073c1d46009

See more details on using hashes here.

File details

Details for the file alignment-1.0.9.linux-x86_64.tar.gz.

File metadata

File hashes

Hashes for alignment-1.0.9.linux-x86_64.tar.gz
Algorithm Hash digest
SHA256 98b28a7b8508693d6ae904b495c4b00f2215d039405df678dd08b143b185e6ff
MD5 7ca7883e30726f3ed67c936439cb7d3c
BLAKE2b-256 83fa12c99ad6949048c14e4b8c9ada8d4a33f86b35f8a79b74835167d8630138

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page