Python 2.7 と正規表現モジュールを使用しています。この式を使用して、長い DNA シーケンス内の短いシーケンスを見つけます。
output = regex.findall(r'(?:'+probe+'){s<'+str(int(mismatches)+1)+'}', sequence, regex.BESTMATCH)
パラメータは次のとおりです。
- プローブ : ゲノムで探す短い文字列
- ゲノム: 長い文字列
- ミスマッチ : ゲノムからのプローブ/スニペット間で許可する差異の数。
ゲノム内の正規表現に一致するすべてのシーケンスの位置を取得する方法はありますか? このスクリプトは重複する一致を見つけますか? それはかなりうまくいきますが、それから私は試してみることにしました:
probe = "TTGACAT"
genome = "TTGACATTGACATATAAT"
mismatches = 0
私が得た:
['TTGACAT']
パラメータは同じだが不一致 = 10
私が得た:
['TTGACAT','GACATAT']
したがって、スクリプトが 'TTGACAT' を 2 回目の発生と重複するために 1 回だけ検出するのか、それとも実際に 'TTGACAT' を 2 回検出して結果を 1 回だけ表示するのかはわかりません...
ありがとう