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 鍵)