I'm looking for a library that performs local alignment with the next features:
1- Returns the start and end position of query and subject
2- Returns more than one alignment
3- Do not require indexes or many I/O operations to run (time efficiency)
At the time I've found that:
scikit-bio -> StripedSmithWaterman and local_pairwise_align_ssw Only returns one alignment (the optimal)
biopython -> pairwise2 Does not return start and end position
https://github.com/mengyao/Complete-Striped-Smith-Waterman-Library Does not return target begin (even they're claiming so in the docs)
https://github.com/mbreese/swalign Only returns one alignment (the optimal)
Bioconductor returns the optimal and no positions
library(Biostrings) mat <- nucleotideSubstitutionMatrix(match = 5, mismatch = -4, baseOnly = TRUE) res1 <- pairwiseAlignment(pattern = "ACGT",subject ="ACT",gapOpening = 10.5, gapExtension = .5,substitutionMatrix = mat)
What I need is to find local alignments between two equal-length short sequences (~1500 bp) I'm using python at the time for programming the wrapper.
I'm using BLAST with word_size = 7, since this operation needs to be perfomed several times, it is not the best tool. One thing is the anount of I/O operations required to create query and subject files for BLAST communication.
BLAT with parameters -out=blast8 -oneOff=1 minScore=0 minIdentity=0 tileSize=6, reports much less results than BLAST