如何从fasta文件中提取序列 如果我有一个包含9个序列的fasta文件,每次我从文件中取出3个序列,然后我计算三个序列之间的距离:
distance(seq1,seq2,seq3)
然后我采取其他三个序列
sequences=[]
with open('example.fasta', 'r') as file:
for Seq_record in SeqIO.parse(file, 'fasta'):
format_string = "%s" % Seq_record.seq
sequence.append (format string)
从文件中的3个序列如何将第一个序列分配给seq1,将第二个序列分配给seq2,将第三个序列分配给seq3
from example.fasta:
seq1=the first sequence
seq2=second sequence
seq3=the third sequence
然后我计算distance(seq1,seq2,seq3)
然后,对文件
答案 0 :(得分:0)
看起来您将每个序列附加到名为sequences
的列表中。您只需使用方括号中的数字即可访问列表中的每个单独序列:
sequences=[]
with open('example.fasta', 'r') as file:
for Seq_record in SeqIO.parse(file, 'fasta'):
format_string = "%s" % Seq_record.seq
sequences.append(format_string)
seq1 = sequences[0]
seq2 = sequences[1]
seq3 = sequences[2]
distance(seq1, seq2, seq3)
或者,您可以跳过创建seq1,seq2,seq3并将列表元素直接传递到距离:
distance(sequences[0], sequences[1], sequences[2])
如果您希望一般以三个为一组查看文件中的所有序列:
for x in range(0, len(sequences), 3):
distance(sequences[x], sequences[x+1], sequences[x+2])