确定序列分析的阈值

时间:2019-03-05 18:45:28

标签: python sequence

我已经在pyhton 3.7中编写了一个函数来检查序列中的相似性,但是我必须确定一个阈值,并且该阈值根据查询的长度而变化。我想在0-1或%之间阻止这个阈值,但是不能这样做。这是我写的代码;

def ctrlF(subject:str, query:str, treshold=9):
    for i in range(0, len(subject)-len(query)):
        s1 = subject[i:i+len(query)]
        score = 0
        consensus = ''
        for j in range(0, len(query)):
            if s1[j] == query[j]:
                score = score + 1
                consensus = consensus + '.'
            else:
                consensus = consensus + s1[j]
        if score >= treshold:
            print('{0}\t{1}\t{2}'.format(i, consensus, score))

所以基本上我已经确定了阈值9,但是我想更改它。

S = 'TGATGGCAGGGTTCATGGGATTGGAGGGTCCTGACGAAGTCACAAAGCTGTCTGTGTAGCCCGAGAAACCATGCCGGCAGTAGGCCGAGCCGCTTTCAGGGGCTGAGTTCAGGCTGCTCTGGTGGGCCGAGGTGGGAGGCAGAGGCTGGGGCCGATGCACTGTACTGCTTTGCTCAGACACTGTTTGTGATATGGACGTTGGTGGGTACGGGCTGTCTGACAGTTGATATGGCTGAAGTGTGGGCATTGCTGATGGTGGAAACCCCCCTGGGATCAGGTGGTTAAAAGCCATCAGCTGATTGGCTCCTGCTTGTTTCCTCCATCTTGCTCTTCTGTTACTAAACCAGACCTGAACGCGAGCCTCTGTGAGTTTGGCTCTCTGCGCCAGCTCTTCTCGTGTGTAGATGTCAGGGTAGTGTGTCCTCTCAAAGGCTCTCTCAAGTTCCTCCAGTTGTTCTGCGGTGAAAGTGGTGCGGCTGCGGCGTTGTTT' q ='ATGGGATTGGAGGGT'

这些是我的主题和查询。

0 个答案:

没有答案