Modern Cpp binding for complete-striped-smith-watern-library
Project description
Modern C++ Binding for SSW Library
Changes
- Add Modern C++ Binding
- Use pybind11 Binding
- Provide Python api
Installation
$ pip install mssw
Usage
Example 1: Alignment with default filter and score matrix
import mssw
reference = "CAGCCTTTCTGACCCGGAAATCAAAATAGGCACAACAAA"
query = "CTGAGCCGGTAAATC"
# default match: int = 2, mismatch: int = 2, gap_open: int = 3, gap_extend: int = 1
aligner = mssw.Aligner()
aligner_filter = mssw.Filter()
alignment = aligner.align(query, reference, aligner_filter)
Example 2: Alignment with default filter and score matrix
import mssw
reference = "CAGCCTTTCTGACCCGGAAATCAAAATAGGCACAACAAA"
query = "CTGAGCCGGTAAATC"
aligner = mssw.Aligner()
alignment = aligner.align(query, reference)
Example 3: Alignment with filter But custom gap open and gap extension
import mssw
reference = "CAGCCTTTCTGACCCGGAAATCAAAATAGGCACAACAAA"
query = "CTGAGCCGGTAAATC"
aligner = mssw.Aligner(match=3, mismatch=1, gap_open=2, gap_extend=2)
alignment = aligner.align(query, reference)
Example 4: Alignment Result
import mssw
reference = "CAGCCTTTCTGACCCGGAAATCAAAATAGGCACAACAAA"
query = "CTGAGCCGGTAAATC"
aligner = mssw.Aligner(match=3, mismatch=1, gap_open=2, gap_extend=2)
alignment = aligner.align(query, reference)
assert alignment.sw_score == 21
assert alignment.sw_score_next_best == 2
assert alignment.ref_begin == 8
assert alignment.ref_end == 21
assert alignment.query_begin == 0
assert alignment.query_end == 14
assert alignment.ref_end_next_best == 0
assert alignment.mismatches == 2
assert alignment.cigar_string == "4=1X4=1I5="
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
mssw-0.1.3.tar.gz
(79.6 kB
view hashes)
Built Distribution
Close
Hashes for mssw-0.1.3-cp310-cp310-manylinux_2_31_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 48103f1e198e315ec9b72ebf58efc303521e5c66623f1238ad39afd01f57e19c |
|
MD5 | 3b99f4c75c7f09dc437fb6b20ddb7ebe |
|
BLAKE2b-256 | 08a2f20a17361c22bd260ce979c5d8e044703b632c16c08a334e508392b6a7d0 |