Bio.SeqUtils包

子模块

模块内容

用于处理序列的其他功能。

Bio.SeqUtils.gc_fraction(seq, ambiguous='remove')

计算序列中的G+C百分比(浮动在0和1之间)。

处理混合案例序列。在此上下文中,模糊的核苷是与ATCGSWU不同的那些(S是G或C,W是A或T)。

如果模棱两可等于“remove”(默认),则将仅计算GMS,并且在计算序列长度时仅包括ACTG SWU。相当于在计算GC含量之前删除集合BDHKMNRVXY中的所有字符,因为这些模糊的核苷中的每一个可以位于(A,T)或(C,G)中。

如果模糊等于“忽略”,则它将仅将明确的核苷(GSK)视为计入GC百分比,但在计算序列长度时将包括所有模糊和明确的核苷。

如果歧义等于“加权”,则在对歧义字符进行计数时将使用“平均值”,例如,G和C将算作1,N和X将算作0.5,D将算作0.33等。请参阅Bio.SeqUtils._完整列表的gc_values。

将为二义性参数的任何其他值引发ValueError。

>>> from Bio.SeqUtils import gc_fraction
>>> seq = "ACTG"
>>> print(f"GC content of {seq} : {gc_fraction(seq):.2f}")
GC content of ACTG : 0.50

RNA序列示例:

>>> seq = "GGAUCUUCGGAUCU"
>>> print(f"GC content of {seq} : {gc_fraction(seq):.2f}")
GC content of GGAUCUUCGGAUCU : 0.50

为了计算GC含量,S和W是模糊的。

>>> seq = "ACTGSSSS"
>>> gc = gc_fraction(seq, "remove")
>>> print(f"GC content of {seq} : {gc:.2f}")
GC content of ACTGSSSS : 0.75
>>> gc = gc_fraction(seq, "ignore")
>>> print(f"GC content of {seq} : {gc:.2f}")
GC content of ACTGSSSS : 0.75
>>> gc = gc_fraction(seq, "weighted")
>>> print(f"GC content with ambiguous counting: {gc:.2f}")
GC content with ambiguous counting: 0.75

一些具有模糊核数的例子。

>>> seq = "ACTGN"
>>> gc = gc_fraction(seq, "ignore")
>>> print(f"GC content of {seq} : {gc:.2f}")
GC content of ACTGN : 0.40
>>> gc = gc_fraction(seq, "weighted")
>>> print(f"GC content with ambiguous counting: {gc:.2f}")
GC content with ambiguous counting: 0.50
>>> gc = gc_fraction(seq, "remove")
>>> print(f"GC content with ambiguous removing: {gc:.2f}")
GC content with ambiguous removing: 0.50

模糊的核苷也会从序列的长度中被删除。

>>> seq = "GDVV"
>>> gc = gc_fraction(seq, "ignore")
>>> print(f"GC content of {seq} : {gc:.2f}")
GC content of GDVV : 0.25
>>> gc = gc_fraction(seq, "weighted")
>>> print(f"GC content with ambiguous counting: {gc:.4f}")
GC content with ambiguous counting: 0.6667
>>> gc = gc_fraction(seq, "remove")
>>> print(f"GC content with ambiguous removing: {gc:.2f}")
GC content with ambiguous removing: 1.00

请注意,这将为空序列返回零。

Bio.SeqUtils.GC123(seq)

计算G+C含量:第一、第二和第三位置的总数。

返回整个序列和三个密码子位置的四个浮点数(百分比在0到100之间)的多元组。 例如

>>> from Bio.SeqUtils import GC123
>>> GC123("ACTGTN")
(40.0, 50.0, 50.0, 0.0)

处理混合大小写序列,但不处理模糊的核苷。

Bio.SeqUtils.GC_skew(seq, window=100)

计算序列中多个窗口的GC倾斜(G-C)/(G+C)。

返回比率(浮点数)列表,由序列长度和窗口大小控制。

通过处理除零错误,为没有任何G/C的窗口返回0。

不查看任何模糊的核苷。

Bio.SeqUtils.xGC_skew(seq, window=1000, zoom=100, r=300, px=100, py=100)

计算并绘制正常和累积GC倾斜(图形!)。

在seq中搜索DNA子seq,返回列表 [subseq, positions] .

使用模糊的值(例如N = A或T或C或G,R = A或G等),仅在前向链上搜索。

Bio.SeqUtils.seq3(seq, custom_map=None, undef_code='Xaa')

将蛋白质序列从一个字母代码转换为三个字母代码。

单个必需的输入参数“seq”应该是使用单字母代码的蛋白质序列,可以作为Python字符串或Seq或MutableSeq对象。

该函数使用三个字母的氨基酸代码将氨基酸序列作为字符串返回。输出遵循IUPAC标准(包括模棱两可的字符B代表“Asx”,J代表“Xle”和X代表“Xaa”,U代表“Sel”和O代表“Pyl”)加上“Ter”作为星号给出的终止符。默认情况下,任何未知字符(包括可能的间隔字符)都会更改为“Xaa”。

例如

>>> from Bio.SeqUtils import seq3
>>> seq3("MAIVMGRWKGAR*")
'MetAlaIleValMetGlyArgTrpLysGlyAlaArgTer'

您可以使用字典“custom_map”参数(默认为“*”:“Ter '})设置密码子终止代码的自定义翻译,例如

>>> seq3("MAIVMGRWKGAR*", custom_map={"*": "***"})
'MetAlaIleValMetGlyArgTrpLysGlyAlaArg***'

您还可以使用“unef_code”参数为非氨基酸字符(例如“-”)设置自定义翻译,例如

>>> seq3("MAIVMGRWKGA--R*", undef_code='---')
'MetAlaIleValMetGlyArgTrpLysGlyAla------ArgTer'

如果未给出,“unef_code”默认为“Xaa”,例如

>>> seq3("MAIVMGRWKGA--R*")
'MetAlaIleValMetGlyArgTrpLysGlyAlaXaaXaaArgTer'

该功能的灵感来自BioPerl的seq3。

Bio.SeqUtils.seq1(seq, custom_map=None, undef_code='X')

将蛋白质序列从三字母代码转换为一字母代码。

单个必需的输入参数“seq”应该是使用三字母代码的蛋白质序列,可以作为Python字符串或Seq或MutableSeq对象。

该函数使用单字母的氨基酸代码将氨基酸序列作为字符串返回。输出遵循IUPAC标准(包括歧义字符“B”代表“Asx”、“J”代表“Xle”、“X”代表“Xaa”、“U”代表“Sel”和“O”代表“Pyl”)加上“*”代表给定“Ter”代码的终止符。默认情况下,任何未知字符(包括可能的间隔字符)都会更改为“-”。

例如

>>> from Bio.SeqUtils import seq1
>>> seq1("MetAlaIleValMetGlyArgTrpLysGlyAlaArgTer")
'MAIVMGRWKGAR*'

输入不区分大小写,例如

>>> from Bio.SeqUtils import seq1
>>> seq1("METalaIlEValMetGLYArgtRplysGlyAlaARGTer")
'MAIVMGRWKGAR*'

您可以使用字典“custom_map”参数(默认为' Ter ':''})设置密码子终止代码的自定义翻译,例如

>>> seq1("MetAlaIleValMetGlyArgTrpLysGlyAla***", custom_map={"***": "*"})
'MAIVMGRWKGA*'

您还可以使用“unef_code”参数为非氨基酸字符(例如“-”)设置自定义翻译,例如

>>> seq1("MetAlaIleValMetGlyArgTrpLysGlyAla------ArgTer", undef_code='?')
'MAIVMGRWKGA??R*'

如果未给出,“unef_code”默认为“X”,例如

>>> seq1("MetAlaIleValMetGlyArgTrpLysGlyAla------ArgTer")
'MAIVMGRWKGAXXR*'
Bio.SeqUtils.molecular_weight(seq, seq_type='DNA', double_stranded=False, circular=False, monoisotopic=False)

将DNA、RNA或蛋白质序列的分子质量计算为浮动。

只允许使用明确的字母。假定核苷酸序列具有5'磷酸。

论点:
  • seq:string、Seq或SeqRecord对象。

  • seq_类型:默认情况是假设DNA;使用字符串“DNA”、“RNA”或“蛋白质”覆盖该字符串。

  • double_stranded:计算双链分子的质量?

  • circular:分子是圆形的吗(没有末端)?

  • 单一同位素:使用单一同位素质量表?

>>> print("%0.2f" % molecular_weight("AGC"))
949.61
>>> print("%0.2f" % molecular_weight(Seq("AGC")))
949.61

然而,最好是显式的--例如使用字符串:

>>> print("%0.2f" % molecular_weight("AGC", "DNA"))
949.61
>>> print("%0.2f" % molecular_weight("AGC", "RNA"))
997.61
>>> print("%0.2f" % molecular_weight("AGC", "protein"))
249.29
Bio.SeqUtils.six_frame_translations(seq, genetic_code=1)

返回漂亮的字符串,显示6帧翻译和GC内容。

漂亮的6帧翻译,包含GC内容-来自xbtools的代码,类似于DNA Striders六帧翻译

>>> from Bio.SeqUtils import six_frame_translations
>>> print(six_frame_translations("AUGGCCAUUGUAAUGGGCCGCUGA"))
GC_Frame: a:5 t:0 g:8 c:5
Sequence: auggccauug ... gggccgcuga, 24 nt, 54.17 %GC


1/1
  G  H  C  N  G  P  L
 W  P  L  *  W  A  A
M  A  I  V  M  G  R  *
auggccauuguaaugggccgcuga   54 %
uaccgguaacauuacccggcgacu
A  M  T  I  P  R  Q
 H  G  N  Y  H  A  A  S
  P  W  Q  L  P  G  S

class Bio.SeqUtils.CodonAdaptationIndex(sequences, table=standard_dna_table)

基类:dict

密码子适应指数(CAE)实现。

实现Sharp和Li描述的密码子适应指数(CGI)(核酸研究1987 Feb 11;15(3):1281-95)。

__init__(sequences, table=standard_dna_table)

从编码DNA序列生成密码子适应性表。

这根据所提供的密码子DNA序列计算了Sharp & Li(核酸研究15(3):1281-1295(1987))定义的每个密码子(w_aj)的相对适应性。

论点:
  • 序列:DNA序列的迭代对象,可能是普通的

    字符串、Seq对象、MutableSeq对象或SeqRecord对象。

  • 表: Bio.Data.CodonTable.CodonTable对象,定义

    遗传密码。默认情况下,使用标准遗传密码。

calculate(sequence)

计算并返回提供的DNA序列的Cal(float)。

optimize(sequence, seq_type='DNA', strict=True)

返回仅具有首选密码子的新DNA序列。

使用CodonAdaptationIndex对象定义的密码子适应性表来生成仅具有首选密码子的DNA序列。在设计用于转基因蛋白表达或荧光团等密码子优化蛋白质的DNA序列时可能有用。

论点:
  • 序列:要密码子优化的DNA、RNA或蛋白质序列。

    作为字符串、Seq或SeqRecord对象提供。

  • seq_style:指定所提供序列类型的字符串。

    选项包括“DNA”、“RNA”和“蛋白质”。默认为“DNA”。

  • 严格: 确定在以下情况下是否应引发异常

    对于给定的氨基酸来说,两个密码子同样是首选的。

退货:

Seq对象,其DNA编码与序列参数相同的蛋白质,但仅使用密码子适应指数定义的首选密码子。如果多个密码子同样优先,则会发出警告并选择一个密码子用于优化序列。

__str__()

返回url(self)。

__firstlineno__ = 578
__static_attributes__ = ('_table',)