次世代シーケンシングから得られた 10 000 以上の fasta 配列を含む multi-FASTA ファイルがあり、クラスタリング分析を実行するために、ファイル内の各配列に対して各配列のペアワイズ アラインメントを行い、すべての結果を同じ新しいファイルに保存したいと考えています。後。FASTA シーケンスの例と、Python でペアワイズ シーケンス アラインメントを実行するためのコードを以下に示します。
FASTA配列
>m180921_230442_42149_c101464342550000001823297908121882_s1_X0/538/ccs
AGAAGCCACTCATCCATCCAGGCAGGAAGACTCTTAGGATCCTGACTTTCTCCTGGTCCCCACATCCCCT
AAACCGAGGAAGGGGTCCAGCAGGGTCCGAGTCCCTGAAGCAAGGATTCTCCGTGGTCGTGTCCCCACAG
最初の行は、シーケンスの説明の要約が含まれているため、無視してください。
私のコード
from Bio import pairwise2
from Bio.pairwise2 import format_alignment
X = "ACGGGT"
Y = "ACG"
#match score = 2, mismatch score = -1, gap opening = -5, gap extension = -2
alignments = pairwise2.align.globalms(X, Y, 2, -1, -5, -2)
for a in alignments:
print(format_alignment(*a))
問題
コードシーケンスだけでなく、マルチ FASTA ファイル全体をループするように変更するにはどうすればよいでしょうか。また、必要に応じて結果を効率的に保存するにはどうすればよいですか。