我有一个包含多个基因样本比对的 FASTA 文件。我正在尝试开发一个可以计算每个样本的突变数量的程序。最好的方法是什么?将每个基因样本存储在字典中并以某种方式进行比较?
user1647556
问问题
1871 次
2 回答
1
如果它们已经采用对齐格式,则已经计算了身份和不匹配。所以你有这样的事情:
ALN1:ACTGGTTGTCCAACCGTAATCGAAG
Aln2: ---GGTTGTCCAATTC---TCGAAG
将每个捕获到一个字符串中,然后简单地枚举它们。像这样简单的工作:
mutations=0
for i,j in zip(aln1,aln2):
if i != j and i != '-' and j != '-':
mutations+=1
但是,这取决于您的个人标准,如果您想将差距包括为突变等。
于 2012-09-25T04:16:19.790 回答
0
尝试读取 FASTA 文件并将每个序列存储为字符串。您当然可以使用“<”行中的文本作为键来组织字典中的序列。如果基因与没有突变的参考序列长度相同,[i for i, a in enumerate(gene) if a != reference[i]] 将返回突变位置列表。它的长度将是突变的数量。如果突变涉及丢失或添加 AA,则情况会复杂得多。
于 2012-09-25T04:32:34.650 回答