在python中查找开放阅读框架
我想在一组大序列中寻找开放阅读框。 因此,我使用BioPython的ORF_finder函数。 这很好,我可以打印出ORF大于一定大小的核苷酸序列,也可以打印出蛋白质序列 脚本如下所示:在python中查找开放阅读框架,python,biopython,Python,Biopython,我想在一组大序列中寻找开放阅读框。 因此,我使用BioPython的ORF_finder函数。 这很好,我可以打印出ORF大于一定大小的核苷酸序列,也可以打印出蛋白质序列 脚本如下所示: def ORF_Finder(fasta_file, min_length=0, por_n=100): table = 11 min_pro_len = 1000 min_pro_len2 = 400 test = 'ORF' for record in SeqIO.p
def ORF_Finder(fasta_file, min_length=0, por_n=100):
table = 11
min_pro_len = 1000
min_pro_len2 = 400
test = 'ORF'
for record in SeqIO.parse(fasta_file, "fasta"):
print record
min_pro_len = 100
for strand, nuc in [(+1, record.seq), (-1, record.seq.reverse_complement())]:
for frame in range(3):
length = 3 * ((len(record) - frame) // 3) # Multiple of three
for pro in nuc[frame:frame + length].translate(table).split("*"):
if len(nuc) >= 4000:
if len(pro) >= min_pro_len:
outfile.write('>' + str(record.id) + '\n' + str(pro + '\n'))
print("%s...%s - length %i, strand %i, frame %i" \
% (pro[:30], pro[-3:], len(pro), strand, frame))
如果我打印record.seq,我会得到整个序列,但我想要的是这个特定蛋白质的核苷酸序列
如何获得这些序列
致以最良好的祝愿
巴斯
为了澄清问题,我使用nt序列作为输入,例如:
TAATAATAGTAGTAATAGATGATGATGATGATGCGACGACGA
然后我运行ORF finder脚本,它可以为我提供以下氨基酸序列:
MMMMMRRR
但我对氨基酸序列不感兴趣,而是对编码氨基酸的核苷酸序列感兴趣,例如:
ATGATGATGATGATGCGACGACGA
我不知道如何把这个序列取出来嘿,对不起,我的生物学不好,你能把你的程序输出到文件中的片段打印出来吗,还有你想为一个记录打印的片段,没有使用biopython,但是也许我可以帮你。所以我有一个核苷酸序列,比如TattagTagtagTagtagTagtagAtagAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAgAg。你想要与你刚刚用ORF_Finder功能找到的蛋白质相对应的核苷酸序列吗?通常,您希望提供一个示例,说明您获得的输入和输出,以及您期望的输出。事实上,这正是我想要的。我编辑了我的任务并加入了一个例子这是家庭作业吗?或者你真的想找到ORF?因为pgm做得很好。