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_acidsstarts 应与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翻译成蛋白质。