1
私は単語を含むファイルを持っています。私はそれらをpandasでpythonにインポートします。私のコードでは、他のファイルの単語の数を数え、単語ごとのカウントをファイルごとに出力したいと考えています。私は複数のファイルをループしているので、globを使用しています。それが正常に動作しますが、問題は数えるPython;あるファイルの単語を他のファイルの行に数えます。
私のファイルは、私が探しています単語を含むこの
>1
GTCTTCCGGCGAGCGGGCTTTTCACCCGCTTTATCGTTACTTATGTCAGCATTCGCACTT
CTGATACCTCCAGCAACCCTCACAGGCCACCTTCGCAGGCTTACAGAACGCTCCCCTACC
>2
AAAGAAAGCGTAATAGCTCACTGGTCGAGTCGGCCTGCGCGGAAGATGTAACGGGGCTAA
ACCATGCACCGAAGCTGCGGCAGCGACACTCAGGTGTTGTTGGGTAGGGGAGCGTTCTGT
ワードtxtファイルのように見えています。簡略化するために、例えば、 "GTCTT、CCCGC、AACGG"という単語が含まれています。私のコードで
、私はこれらの単語を探して、私の出力は、単語が
>1
GTCTT 1
CCCGC 1
AACGG 0
>2
GTCTT 0
CCCGC 0
AACGG 1
を発見されたどのように多くの時間を教えなければなりません
次のコードで
import pandas as pd
import glob
from itertools import groupby
word = pd.read_csv("word.txt", delim_whitespace=True,header=None)
for file in glob.glob('input.txt'):
with open(file) as f:
for k, g in groupby(f, lambda x: x.startswith('>')):
if k:
sequence = next(g).strip('>\n')
else:
d1 = list(''.join(line.strip() for line in g))
counts = Counter()
if d1 == word:
counts[d1] += 1
print(counts)
それらをカウントすることができる人カウントのコードを変更するのを手伝ってください。どうやったらよいかわかりません。
はい、これは動作します。どうもありがとう! – Gravel
@Gravelよろしくお願いします! – coder