温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2022-03-02 09:45:28 来源:亿速云 阅读:1037 作者:iii 栏目:开发技术

本篇内容主要讲解“怎么用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_rna
Seq('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_dna
Seq('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 Seq
from Bio import SeqIO
from Bio.Alphabet import IUPAC
from Bio.SeqRecord import SeqRecord
import sys, os, argparse, os.path,re,math,time
parser = 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序列翻译成蛋白序列”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节
推荐阅读:
  1. python序列
  2. 序列类型

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI