Bio.SeqUtils.ProtParam 模組

簡單的蛋白質分析。

範例

>>> from Bio.SeqUtils.ProtParam import ProteinAnalysis
>>> X = ProteinAnalysis("MAEGEITTFTALTEKFNLPPGNYKKPKLLYCSNGGHFLRILPDGTVDGT"
...                     "RDRSDQHIQLQLSAESVGEVYIKSTETGQYLAMDTSGLLYGSQTPSEEC"
...                     "LFLERLEENHYNTYTSKKHAEKNWFVGLKKNGSCKRGPRTHYGQKAILF"
...                     "LPLPV")
>>> print(X.count_amino_acids()['A'])
6
>>> print(X.count_amino_acids()['E'])
12
>>> print("%0.2f" % X.get_amino_acids_percent()['A'])
0.04
>>> print("%0.2f" % X.get_amino_acids_percent()['L'])
0.12
>>> print("%0.2f" % X.molecular_weight())
17103.16
>>> print("%0.2f" % X.aromaticity())
0.10
>>> print("%0.2f" % X.instability_index())
41.98
>>> print("%0.2f" % X.isoelectric_point())
7.72
>>> sec_struc = X.secondary_structure_fraction()  # [helix, turn, sheet]
>>> print("%0.2f" % sec_struc[0])  # helix
0.33
>>> print("%0.2f" % sec_struc[1])  # turn
0.29
>>> print("%0.2f" % sec_struc[2])  # sheet
0.37
>>> epsilon_prot = X.molar_extinction_coefficient()  # [reduced, oxidized]
>>> print(epsilon_prot[0])  # with reduced cysteines
17420
>>> print(epsilon_prot[1])  # with disulfid bridges
17545
其他公開方法為
  • gravy

  • protein_scale

  • flexibility

  • charge_at_pH

class Bio.SeqUtils.ProtParam.ProteinAnalysis(prot_sequence, monoisotopic=False)

基底:object

包含蛋白質分析方法的類別。

建構子接受兩個參數。第一個是蛋白質序列,以字串或 Seq 物件表示。

第二個參數是可選的。如果設定為 True,氨基酸的重量將使用其單一同位素質量(每個元素的豐度最高的同位素的重量)來計算,而不是使用平均分子質量(每個元素的所有穩定同位素的平均重量)。如果設定為 false (預設值) 或省略,則計算將使用 IUPAC 平均分子質量。

__init__(prot_sequence, monoisotopic=False)

初始化類別。

count_amino_acids()

計算標準氨基酸,回傳字典。

計算每個氨基酸在蛋白質序列中出現的次數。回傳字典 {氨基酸:次數}。

回傳值會快取在 self.amino_acids_content 中。後續呼叫時不會重新計算。

get_amino_acids_percent()

計算氨基酸含量百分比。

與 count_amino_acids 相同,只不過回傳的是整個序列的百分比。回傳 {氨基酸:百分比} 字典。

回傳值會快取在 self.amino_acids_percent 中。

輸入是字典 self.amino_acids_content。輸出是一個以氨基酸為鍵的字典。

molecular_weight()

從蛋白質序列計算分子量。

aromaticity()

根據 Lobry, 1994 計算芳香性。

根據 Lobry, 1994 計算蛋白質的芳香性值。它只是 Phe+Trp+Tyr 的相對頻率。

instability_index()

根據 Guruprasad et al 1990 計算不穩定指數。

實作 Guruprasad et al. 1990 的方法來測試蛋白質的穩定性。任何高於 40 的值表示蛋白質不穩定(半衰期短)。

參考:Guruprasad K., Reddy B.V.B., Pandit M.W. Protein Engineering 4:155-161(1990)。

flexibility()

根據 Vihinen, 1994 計算彈性。

沒有參數可變更視窗大小,因為參數是針對視窗 = 9 而定的。使用的參數已針對決定彈性進行最佳化。

gravy(scale='KyteDoolitle')

根據 Kyte 和 Doolitle, 1982 計算 GRAVY(疏水性的總平均值)。

使用給定的疏水性量表,預設使用 Kyte 和 Doolittle 最初提出的量表 (KyteDoolitle)。其他選項有:Aboderin, AbrahamLeo, Argos, BlackMould, BullBreese, Casari, Cid, Cowan3.4, Cowan7.5, Eisenberg, Engelman, Fasman, Fauchere, GoldSack, Guy, Jones, Juretic, Kidera, Miyazawa, Parker, Ponnuswamy, Rose, Roseman, Sweet, Tanford, Wilson 和 Zimmerman。

新的量表可以新增至 ProtParamData 中。

protein_scale(param_dict, window, edge=1.0)

使用任何氨基酸量表計算分佈圖。

氨基酸量表由指派給每種類型氨基酸的數值定義。最常使用的量表是疏水性或親水性量表,以及二級結構構象參數量表,但還有許多其他量表是根據氨基酸的不同化學和物理性質而來的。您可以設定數個參數來控制量表分佈圖的計算,例如視窗大小和視窗邊緣的相對權重值。

視窗大小:視窗大小是計算分佈圖時要使用的間隔長度。對於視窗大小 n,我們使用 i-(n-1)/2 相鄰殘基在每一側來計算殘基 i 的分數。殘基 i 的分數是這些氨基酸的縮放值的總和,可選擇根據其在視窗中的位置進行加權。

邊緣:視窗的中心氨基酸的權重始終為 1。預設情況下,其餘視窗位置的氨基酸具有相同的權重,但您可以透過將間隔開始和結束時的殘基邊緣值設定為 0 到 1 之間的值,使視窗中心的殘基比其他殘基具有更大的權重。例如,對於邊緣 = 0.4 和視窗大小為 5,權重將為:0.4、0.7、1.0、0.7、0.4。

此方法回傳一個值清單,可以繪製這些值來檢視蛋白質序列的變化。存在許多量表。只需將您喜歡的量表新增至 ProtParamData 模組即可。

類似於 expasy 的 ProtScale:http://www.expasy.org/cgi-bin/protscale.pl

isoelectric_point()

計算等電點。

使用 IsoelectricPoint 模組來計算蛋白質的 pI。

charge_at_pH(pH)

計算蛋白質在指定 pH 值的電荷。

secondary_structure_fraction()

計算螺旋、轉角和片層的比例。

回傳趨向於分別根據 Haimov 和 Srebnik, 2016;Hutchinson 和 Thornton, 1994;以及 Kim 和 Berg, 1993 處於螺旋、轉角或片層的氨基酸比例清單。

螺旋中的氨基酸:E、M、A、L、K。轉角中的氨基酸:N、P、G、S、D。片層中的氨基酸:V、I、Y、F、W、L、T。

請注意,在 v1.82 之前,此方法錯誤地回傳 (片層、轉角、螺旋),同時聲稱回傳 (螺旋、轉角、片層)。

回傳由三個浮點數組成的元組 (螺旋、轉角、片層)。

molar_extinction_coefficient()

計算莫耳消光係數。

計算莫耳消光係數,假設半胱氨酸(還原)和胱氨酸殘基 (Cys-Cys 鍵)