将重叠的DNA区域转换为变量,然后改变重叠区域的长度

时间:2018-05-18 17:59:24

标签: python string fragmentation

我对Python比较陌生,所以我非常感谢对我的代码提出任何建设性的反馈意见,如果我错了的话,如果你可以指导我正确的方向,我会非常感激。

所以我在Python中设计了一个程序,它接受一个DNA序列,基本上是一个只包含四个字母(A,T,C和G)的字符串,并找到序列的补码。此后,它采用两个序列并将它们分成一定长度的片段,使得每个片段与相邻片段重叠相同数量的字母。

例如,它会接受DNA序列,比如s1,并为其补体和片段产生以下输出。

s1 = "AGCCCTCCAGGACAGGCTGCATCAGAAGAGGCCATCAAGCAGGTCTGTTCCAAGGGCCTTTGCGTCAGGT"

print(dna_complement(s1))
>>>> complement = TCGGGAGGTCCTGTCCGACGTAGTCTTCTCCGGTAGTTCGTCCAGACAAGGTTCCCGGAAACGCAGTCCA
print(dna_fragment(s1, oligo_size=8, oligo_overlap=3)):
>>>> AGCCCTCC..GACAGGCT..ATCAGAAG..GCCATCAA..AGGTCTGT..CAAGGGCC..TGCGTCAGGT
     .....AGGTCCTG..CGACGTAG..TTCTCCGG..GTTCGTCC..ACAAGGTT..CGGAAACG.......

正如您在上面的示例中所看到的,dna_fragmentation的输出是两个共享3个碱基对(即三个字母)的寡核苷酸重叠的字符串,并且寡核苷酸的大小至少为8个碱基对。

此后,程序试图确定重叠区域的特定参数(Tm)的值(Tm是重叠区域的一半被盘绕而另一半是DNA双链体形式的温度)。现在,程序必须尝试改变重叠区域的长度,使得重叠区域的Tm对于所有重叠区域必须大致相同。我已经成功完成了以前的任务,主要是将寡核苷酸(片段)存储在一个列表中,并使用列表理解来找到每个寡核苷酸的Tm;但是,我未能完成后一项任务。

所以我的问题是我如何获取重叠区域,将其存储在变量中然后更改其长度以使其与某个Tm匹配?

0 个答案:

没有答案