千家信息网

怎么用biopython将cds序列翻译成蛋白序列

发表于:2024-09-21 作者:千家信息网编辑
千家信息网最后更新 2024年09月21日,本篇内容主要讲解"怎么用biopython将cds序列翻译成蛋白序列",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"怎么用biopython将cds序列翻译
千家信息网最后更新 2024年09月21日怎么用biopython将cds序列翻译成蛋白序列

本篇内容主要讲解"怎么用biopython将cds序列翻译成蛋白序列",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"怎么用biopython将cds序列翻译成蛋白序列"吧!

将cds序列翻译成蛋白序列 , 由于不同的物种或者特殊的细胞器(线粒体等)的密码子存在差异,我们不能随便默认的进行翻译,这里的biopython可以根据我们的需要使用不同的密码子进行蛋白翻译,密码子见:

1.普通的密码子翻译,rna翻译成蛋白质

>>> from Bio.Seq import Seq>>> from Bio.Alphabet import IUPAC>>> messenger_rna = Seq("AUGGCCAUUGUAAUGGGCCGCUGAAAGGGUGCCCGAUAG", IUPAC.unambiguous_rna)>>> messenger_rnaSeq('AUGGCCAUUGUAAUGGGCCGCUGAAAGGGUGCCCGAUAG', IUPACUnambiguousRNA())>>> messenger_rna.translate()Seq('MAIVMGR*KGAR*', HasStopCodon(IUPACProtein(), '*'))

2. cds序列翻译成蛋白序列

>>> from Bio.Seq import Seq>>> from Bio.Alphabet import IUPAC>>> coding_dna = Seq("ATGGCCATTGTAATGGGCCGCTGAAAGGGTGCCCGATAG", IUPAC.unambiguous_dna)>>> coding_dnaSeq('ATGGCCATTGTAATGGGCCGCTGAAAGGGTGCCCGATAG', IUPACUnambiguousDNA())>>> coding_dna.translate()Seq('MAIVMGR*KGAR*', HasStopCodon(IUPACProtein(), '*'))

3.指定密码子翻译成蛋白序列

>>> coding_dna.translate(table="Vertebrate Mitochondrial")Seq('MAIVMGRWKGAR*', HasStopCodon(IUPACProtein(), '*'))

或者用序号

>>> coding_dna.translate(table=2)Seq('MAIVMGRWKGAR*', HasStopCodon(IUPACProtein(), '*'))

批量运行示例代码:

from Bio.Seq import Seqfrom Bio import SeqIOfrom Bio.Alphabet import IUPACfrom Bio.SeqRecord import SeqRecordimport sys, os, argparse, os.path,re,math,timeparser = argparse.ArgumentParser(description='This script is used to translate cds to pep')#parser.add_argument('-m','--map',help='Please input ref mapped id file',required=True)parser.add_argument('-f','--fasta',help='Please fasta file',required=True)parser.add_argument('-o','--out_dir',help='Please input complete out_put directory path',default = os.getcwd(),required=False)parser.add_argument('-t','--table',type=int,default=1,help=' genetic code :https://www.ncbi.nlm.nih.gov/Taxonomy/Utils/wprintgc.cgi, default table id 1',required=False)parser.add_argument('-n','--name',default ='pep',required=False,help='Please specify the output, pep')################################################################################args = parser.parse_args()dout=''if os.path.exists(args.out_dir):    dout=os.path.abspath(args.out_dir)else:    os.mkdir(args.out_dir)    dout=os.path.abspath(args.out_dir)output_handle = open(dout+'/'+args.name+'.fa', "w")for rec in SeqIO.parse(args.fasta, "fasta"):    rec.seq=rec.seq.translate(table=args.table)    SeqIO.write(rec, output_handle, "fasta")output_handle.close()

到此,相信大家对"怎么用biopython将cds序列翻译成蛋白序列"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0