J'écris du code pour trouver des alignements locaux entre deux séquences. Voici un minimum, par exemple de travail que je travaille sur:Biopython: l'alignement local entre les séquences d'ADN ne trouve pas d'alignement optimal
from Bio import pairwise2
from Bio.pairwise2 import format_alignment
seq1 = "GTGGTCCTAGGC"
seq2 = "GCCTAGGACCAC"
# scores for the alignment
match =1
mismatch = -2
gapopen = -2
gapext = 0
# see: http://biopython.org/DIST/docs/api/Bio.pairwise2-module.html
# 'localms' takes <seq1,seq2, match,mismatch,open,extend>
for a in pairwise2.align.localms(seq1,seq2,match,mismatch,gapopen,gapext):
print(format_alignment(*a))
Le code suivant fonctionne avec la sortie
GTGGTCCTAGGC----
|||||
----GCCTAGGACCAC
Score=5
Mais un score de « 6 » devrait être possible, trouver le « CC 'à côté des 5 alignements, comme si:
GTGGTCCTAGGC----
||||||
----GCCTAGGACCAC
Score=6
Des idées sur ce qui se passe?