イムはテキストファイルのシーケンスからジーンカウントと頻度を見つけようとしていますが、私のコードでは1つのヌクレオチドカウントしか出力していません。ジヌクレオチドカウントと頻度
e = "ecoli.txt"
ecnt = {}
with open(e) as seq:
for line in seq:
for word in line.split():
for i in range(len(seqr)):
dinuc = (seqr[i] + seqr[i:i+2])
for dinuc in seqr:
if dinuc in ecnt:
ecnt[dinuc] += 1
else:
ecnt[dinuc] = 1
for x,y in ecnt.items():
print(x, y)
サンプル入力: "AAATTTCGTCGTTGCCC"
サンプル出力: AA:2 TT:3 TC:2 CG:2 GT:2 GC:1 CC:2
今、私の出力のための単一のヌクレオチドを得るだけ:
C 83550600 A 60342100 T 88192300 G 92834000
すなわち「AAA」を繰り返しヌクレオチドについて、カウントが連続した「AA」のすべての可能な組み合わせを返すために持って、出力が2ではなく1でなければなりませんので、それはどのような順序をdoesntのジヌクレオチドが列挙されていれば、私はすべての組み合わせが必要で、コードが繰り返しヌクレオチドの正確な数を返す必要があります。私はTAを求めていましたが、私の唯一の問題は、私の辞書にジヌクレオチドを追加するための 'for'ループを得ることでした。私の範囲は間違っているかもしれないし、間違っていないかもしれないと思います。ファイルは本当に大きなものなので、シーケンスは行に分割されます。
ありがとうございました!
はサンプル入力の短いセクションと対応する所望の出力を表示します。 – John1024
'seqr'とは何ですか?あなたが投稿したスニペットに定義されていません –
あなたのコードは多くの点で壊れています。 'seqr'とは何ですか?なぜline.split()内の単語のためにスペースを空白で分割したのですか?それはDNA配列などではありませんか?改行記号は削除しません。 –