【发布时间】:2012-01-08 10:54:54
【问题描述】:
我必须将 DNA 序列的互补序列翻译成氨基酸
TTTCAATACTAGCATGACCAAAGTGGGAACCCCCTTACGTAGCATGACCCATATATATATATATA
TATATATATATATATGGGTCATGCTACGTAAGGGGGTTCCCACTTTGGTCATGCTAGTATTGAAA
+1 TyrIleTyrIleTyrGlySerCysTyrValArgGlyPheProLeuTrpSerCysStpTyrStp
+2 IleTyrIleTyrMetGlyHisAlaThrOc*GlyGlySerHisPheGlyHisAlaSerIleglu
+3 TyrIleTyrIleTrpValMetLeuArgLysGlyValProThrLeuValMetLeuValLeuLys
- 第一个序列是正常序列,
- 第二个是互补序列,
- 带+1的是我的互补序列对应的氨基酸序列
- +2 的氨基酸序列对应于我从第二个碱基开始的互补序列
- +3 的氨基酸序列对应于我的互补序列,从第三个碱基开始
我已经尝试了下一个代码来获得我的结果,但是我只得到了一个补码序列。没有分割。
seq = "CCGGAAGAGCTTACTTAG"
basecomplement = {'A': 'T', 'C': 'G', 'G': 'C', 'T': 'A'}
def translate(seq):
x = 0
aaseq = []
while True:
try:
aaseq.append(basecomplement[seq[x:x+1]])
x += 1
except (IndexError, KeyError):
break
return aaseq
for frame in range(1):
#print(translate(seq[frame:]))
rseqn= (''.join(item.split('|')[0] for item in translate(seq[frame:])))
rseqn = list(rseqn)
rseqn.reverse()
print( rseqn)
有人可以帮我得到我的结果吗??
【问题讨论】:
-
我试图清理问题以明确提出的问题。
-
我重写了我的序列以使其清晰。
标签: python python-3.x translation bioinformatics dna-sequence