skbio.sequence.GeneticCode¶
- class skbio.sequence.GeneticCode(amino_acids, starts, name='')[源代码]¶
将密码子翻译成氨基酸的遗传密码。
- 参数:
amino_acids (consumable by
skbio.Protein
constructor) -- 包含IUPAC氨基酸字符的64字符载体。氨基酸的顺序应该与NCBI的密码子顺序相对应(参见 笔记 以下章节)。 amino_acids “AAs”字段是NCBI的遗传密码格式吗 [1].starts (consumable by
skbio.Protein
constructor) -- 64个字符的载体只包含M和-个字符,起始密码子用M表示。氨基酸的顺序应与NCBI的密码子顺序相对应(参见 笔记 以下章节)。 starts 是NCBI遗传代码格式的“开始”字段 [1].name (str, optional) -- 基因代号。这只是元数据,并不影响遗传代码本身的功能。
备注
遗传密码可通过
GeneticCode.from_ncbi
并在整个示例中定义了 [1]. 这里定义的遗传密码串与GeneticCode
建造师。秩序 amino_acids 和 starts 应与NCBI的密码子顺序相对应,如 [1]:
UUUUUUUUUUUUUUUUCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG UUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGG UCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAG
请注意,scikit-bio使用IUPAC RNA字母表显示此顺序,而NCBI使用IUPAC DNA字母表显示相同的顺序(出于历史目的)。
引用
示例
获取NCBI的标准遗传代码(表ID 1,scikit-bio中的默认遗传代码):
>>> from skbio import GeneticCode >>> GeneticCode.from_ncbi() GeneticCode (Standard) ------------------------------------------------------------------------- AAs = FFLLSSSSYY**CC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG Starts = ---M---------------M---------------M---------------------------- Base1 = UUUUUUUUUUUUUUUUCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG Base2 = UUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGG Base3 = UCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAG
获取不同的NCBI遗传代码(25):
>>> GeneticCode.from_ncbi(25) GeneticCode (Candidate Division SR1 and Gracilibacteria) ------------------------------------------------------------------------- AAs = FFLLSSSSYY**CCGWLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG Starts = ---M-------------------------------M---------------M------------ Base1 = UUUUUUUUUUUUUUUUCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG Base2 = UUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGG Base3 = UCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAG
定义自定义遗传代码:
>>> GeneticCode('M' * 64, '-' * 64) GeneticCode ------------------------------------------------------------------------- AAs = MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM Starts = ---------------------------------------------------------------- Base1 = UUUUUUUUUUUUUUUUCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG Base2 = UUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGGUUUUCCCCAAAAGGGG Base3 = UCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAGUCAG
使用NCBI的标准遗传代码将RNA序列翻译为蛋白质:
>>> from skbio import RNA >>> rna = RNA('AUGCCACUUUAA') >>> GeneticCode.from_ncbi().translate(rna) Protein -------------------------- Stats: length: 4 has gaps: False has degenerates: False has definites: True has stops: True -------------------------- 0 MPL*
属性
name
基因代号。
reading_frames
六种可能的阅读框架。
内嵌函数
__eq__
(其他)确定遗传密码是否与另一个相同。
__ge__
(value, /)返回self>=值。
__getstate__
\()泡菜的帮手。
__gt__
(value, /)返回self>值。
__le__
(value, /)返回self<=value。
__lt__
(value, /)返回self<value。
__ne__
(其他)确定遗传密码是否与另一个密码不同。
__str__
\()返回遗传代码的字符串表示形式。
方法
from_ncbi
([table_id])返回表ID指定的NCBI遗传代码。
translate
(sequence[, reading_frame, start, stop])将RNA序列转化为蛋白质序列。
translate_six_frames
(sequence[, start, stop])用六种可能的阅读框架将RNA翻译成蛋白质。