長いバイナリ文字列でバイナリ5マーの数を見つけようとしています。つまり、次のような文字列が与えられた場合:seq = '000111100101101'、各5マーが出現する回数をカウントしたいと思います。32回の反復すべてのリストを簡単に生成しました。
import re
from itertools import product
combo = [ ''.join(x) for x in product('01', repeat=5) ]
私の問題は、重複する各組み合わせの発生をカウントすることです。(つまり、長さ5:0:4、1:5、2:6、3:7の重複するウィンドウをチェックインしたい...(シーケンスの長さの合計-4つのウィンドウ)。方法がわかりません。したがって、重複するウィンドウをカウントする方法で(combo [i] = seq.count(i)は機能しないようです)。
ありがとう!
与えられたシーケンスに必要な出力の例:
seq: '11111101'
Combos: (11111 :2 , 11101 :1 , 11110 :1)