Bio.SeqUtils 包
子模块
- Bio.SeqUtils.CheckSum 模块
- Bio.SeqUtils.IsoelectricPoint 模块
- Bio.SeqUtils.MeltingTemp 模块
- Bio.SeqUtils.ProtParam 模块
- 示例
ProteinAnalysis
ProteinAnalysis.__init__()
ProteinAnalysis.count_amino_acids()
ProteinAnalysis.get_amino_acids_percent()
ProteinAnalysis.molecular_weight()
ProteinAnalysis.aromaticity()
ProteinAnalysis.instability_index()
ProteinAnalysis.flexibility()
ProteinAnalysis.gravy()
ProteinAnalysis.protein_scale()
ProteinAnalysis.isoelectric_point()
ProteinAnalysis.charge_at_pH()
ProteinAnalysis.secondary_structure_fraction()
ProteinAnalysis.molar_extinction_coefficient()
- Bio.SeqUtils.ProtParamData 模块
- Bio.SeqUtils.lcc 模块
模块内容
用于处理序列的各种函数。
- Bio.SeqUtils.gc_fraction(seq, ambiguous='remove')
计算 seq 中的 G+C 百分比(介于 0 和 1 之间的浮点数)。
处理大小写混合的序列。在本例中,模糊碱基是指与 ATCGSWU 不同的那些碱基(S 为 G 或 C,W 为 A 或 T)。
如果 ambiguous 等于“remove”(默认值),则将仅计算 GCS,并且在计算序列长度时将仅包含 ACTGSWU。相当于在计算 GC 含量之前,将 BDHKMNRVXY 集合中的所有字符移除,因为这些模糊碱基可以是 (A,T) 或 (C,G)。
如果 ambiguous 等于“ignore”,则将仅将明确的碱基(GCS)计入 GC 百分比,但在计算序列长度时将包含所有模糊和明确的碱基。
如果 ambiguous 等于“weighted”,则在计算模糊字符时将使用“平均”值,例如,G 和 C 将计为 1,N 和 X 将计为 0.5,D 将计为 0.33 等等。有关完整列表,请参阅 Bio.SeqUtils._gc_values。
对于 ambiguous 参数的任何其他值,将引发 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
S 和 W 是计算 GC 含量时的模糊碱基。
>>> 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 含量:总数、第一位、第二位和第三位的 G+C 含量。
返回一个包含四个浮点数(介于 0 和 100 之间的百分比)的元组,分别代表整个序列和三个密码子位置的 G+C 含量。例如:
>>> 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 偏斜(图形!!!)。
- Bio.SeqUtils.nt_search(seq, subseq)
在 seq 中搜索 DNA 子序列,返回 [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***'
您还可以使用“undef_code”参数设置对非氨基酸字符(如“ - ”)的自定义翻译,例如:
>>> seq3("MAIVMGRWKGA--R*", undef_code='---') 'MetAlaIleValMetGlyArgTrpLysGlyAla------ArgTer'
如果未指定,则“undef_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*'
您还可以使用“undef_code”参数设置对非氨基酸字符(如“ - ”)的自定义翻译,例如:
>>> seq1("MetAlaIleValMetGlyArgTrpLysGlyAla------ArgTer", undef_code='?') 'MAIVMGRWKGA??R*'
如果未指定,则“undef_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:字符串、Seq 或 SeqRecord 对象。
seq_type:默认情况下,假定为 DNA;使用字符串“DNA”、“RNA”或“protein”覆盖此参数。
double_stranded:计算双链分子的质量吗?
circular:该分子是环状的吗(没有末端)?
monoisotopic:使用单同位素质量表吗?
>>> 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 含量 - 来自 xbbtools 的代码,类似于 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
密码子适应指数 (CAI) 实现。
实现 Sharp 和 Li (Nucleic Acids Res. 1987 Feb 11;15(3):1281-95) 描述的密码子适应指数 (CAI)。
- __init__(sequences, table=standard_dna_table)
从编码 DNA 序列生成密码子适应性表。
这根据提供的密码子 DNA 序列计算 Sharp & Li (Nucleic Acids Research 15(3): 1281-1295 (1987)) 定义的每个密码子的相对适应性 (w_ij)。
- 参数
- 序列:可迭代的 DNA 序列,可以是简单的
字符串、Seq 对象、MutableSeq 对象或 SeqRecord 对象。
- 表:Bio.Data.CodonTable.CodonTable 对象,定义了
遗传密码。默认情况下,使用标准遗传密码。
- calculate(sequence)
计算并返回提供的 DNA 序列的 CAI (浮点数)。
- optimize(sequence, seq_type='DNA', strict=True)
返回一个新的 DNA 序列,其中只有首选密码子。
使用 CodonAdaptationIndex 对象定义的密码子适应性表来生成仅包含首选密码子的 DNA 序列。在设计用于转基因蛋白表达或密码子优化的蛋白质(如荧光团)的 DNA 序列时可能很有用。
- 参数
- 序列:要进行密码子优化的 DNA、RNA 或蛋白质序列。
以 str、Seq 或 SeqRecord 对象的形式提供。
- seq_type:指定提供的序列类型的字符串。
选项为“DNA”、“RNA”和“蛋白质”。默认值为“DNA”。
- 严格:确定当
对给定的氨基酸,两个密码子同样受欢迎时,是否应该引发异常。
- 返回值
Seq 对象,其中 DNA 编码与序列参数相同的蛋白质,但仅使用密码子适应指数定义的首选密码子。如果多个密码子同样受欢迎,则会发出警告,并选择一个密码子用于优化序列。
- __str__()
返回 str(self)。