02-9-2014, 09:57 AM
|
#5
|
x'); DROP TABLE FFR;--
Join Date: Nov 2010
Posts: 6,332
|
Re: Python pattern matching algorithm tuple error
something like this maybe
Code:
def stringScore( mat, baseMap, seq1, seq2, g = -5 ):
if len(seq1) != len(seq2):
raise Exception("Fix your shit, both strings must be of equal length")
score = 0
for base1,base2 in zip(seq1,seq2):
if base1 != base2:
score -= mat[baseMap[base1]][baseMap[base2]]
elif base1 == "-" or base2 == "-":
score += g
else:
score += mat[baseMap[base1]][baseMap[base2]]
return score
mat = [[20, 10, 5, 5],
[10, 20, 5, 5],
[5, 5, 20, 10],
[5, 5, 10, 20]]
alphabet = "TCAG"
baseMap = {base:index for index,base in enumerate(alphabet)}
seq1 = 'ATGTTAT'
seq2 = 'ATCGTAG'
print stringScore(mat, baseMap, seq1, seq2)
Last edited by Reincarnate; 02-9-2014 at 10:02 AM..
|
|
|