多重假設檢驗與Bonferroni校正 FDR校正

2021-09-08 07:35:18 字數 1996 閱讀 8977

總結起來就三句話:

(1)當同乙個資料集有n次(n>=2)假設檢驗時,要做多重假設檢驗校正

(2)對於bonferroni校正,是將p-value的cutoff除以n做校正,這樣差異基因篩選的p-value cutoff就更小了,從而使得結果更加嚴謹

(3)fdr校正是對每個p-value做校正,轉換為q-value。q=p*n/rank,其中rank是指p-value從小到大排序後的次序。

舉乙個具體的例項:

我們測量了m個基因在a,b,c,d,e一共5個時間點的表達量,求其中的差異基因,具體做法:

(1)首先做anova,確定這m個基因中有哪些基因至少出現過差異

(2)5個時間點之間兩兩比較,一共比較5*4/2=10次,則多重假設檢驗的n=10

(3)每個基因做完10次假設檢驗後都有10個p-value,做多重假設檢驗校正(n=10),得到q-value

(4)根據q-value判斷在哪兩組之間存在差異

通過t檢驗等統計學方法對每個蛋白進行p值的計算。t檢驗是差異蛋白表達檢測中常用的統計學方法,通過合併樣本間可變的資料,來評價某乙個蛋白在兩個樣本中是否有差異表達。

但是由於通常樣本量較少,從而對總體方差的估計不很準確,所以t檢驗的檢驗效能會降低,並且如果多次使用t檢驗會顯著增加假陽性的次數。

例如,當某個蛋白的p值小於0.05(5%)時,我們通常認為這個蛋白在兩個樣本中的表達是有差異的。但是仍舊有5%的概率,這個蛋白並不是差異蛋白。那麼我們就錯誤地否認了原假設(在兩個樣本中沒有差異表達),導致了假陽性的產生(犯錯的概率為5%)。

如果檢驗一次,犯錯的概率是5%;檢測10000次,犯錯的次數就是500次,即額外多出了500次差異的結論(即使實際沒有差異)。為了控制假陽性的次數,於是我們需要對p值進行多重檢驗校正,提高閾值。

方法一.bonferroni

「最簡單嚴厲的方法」

例如,如果檢驗1000次,我們就將閾值設定為5%/ 1000 = 0.00005;即使檢驗1000次,犯錯誤的概率還是保持在n×1000 = 5%。最終使得預期犯錯誤的次數不到1次,抹殺了一切假陽性的概率。

該方法雖然簡單,但是檢驗過於嚴格,導致最後找不到顯著表達的蛋白(假陰性)。

方法二.falsediscovery rate

「比較溫和的方法校正p值」

fdr(假陽性率)錯誤控制法是benjamini於2023年提出的一種方法,基本原理是通過控制fdr值來決定p值的值域。相對bonferroni來說,fdr用比較溫和的方法對p值進行了校正。其試圖在假陽性和假陰性間達到平衡,將假/真陽性比例控制到一定範圍之內。例如,如果檢驗1000次,我們設定的閾值為0.05(5%),那麼無論我們得到多少個差異蛋白,這些差異蛋白出現假陽性的概率保持在5%之內,這就叫fdr<5%。

那麼我們怎麼從p value 來估算fdr呢,人們設計了幾種不同的估算模型。其中使用最多的是benjamini and hochberg方法,簡稱bh法。雖然這個估算公式並不夠完美,但是也能解決大部分的問題,主要還是簡單好用!

fdr的計算方法

除了可以使用excel的bh計算方法外,對於較大的資料,我們推薦使用r命令p.adjust。

1.我們將一系列p值、校正方法(bh)以及所有p值的個數(length(p))輸入到p.adjust函式中。

2.將一系列的p值按照從大到小排序,然後利用下述公式計算每個p值所對應的fdr值。

公式:p * (n/i), p是這一次檢驗的pvalue,n是檢驗的次數,i是排序後的位置id(如最大的p值的i值肯定為n,第二大則是n-1,依次至最小為1)。

3.將計算出來的fdr值賦予給排序後的p值,如果某乙個p值所對應的fdr值大於前一位p值(排序的前一位)所對應的fdr值,則放棄公式計算出來的fdr值,選用與它前一位相同的值。因此會產生連續相同fdr值的現象;反之則保留計算的fdr值。

4. 將fdr值按照最初始的p值的順序進行重新排序,返回結果。

最後我們就可以使用校正後的p值進行後續的分析了。

假設檢驗 假設檢驗學習筆記

在實際工作和研究中,往往只能獲得資料的一部分,通常指這個資料為樣本,而通過樣本對整體的估計被稱為假設檢驗。樣本是從整體中選取的較小集合,中心極限定律 樣本的均值約等於總體的均值 不管整體什麼分布,任意乙個總體的樣本均值都會圍繞在總體的均值周圍,且呈正太分布。關鍵資訊 樣本的均值等於總體的均值 樣本的...

假設檢驗 到底該怎麼理解假設檢驗?

學過統計學或概率論的同學,對 假設檢驗 這個詞一定不陌生。因為期末考試的卷子裡必定會考一道這種題,那個時候,我其實對假設檢驗的流程並不是很理解,不過幸好流程簡單,照葫蘆畫瓢,套一套格式就能答對。那假設檢驗到底是個什麼東西?先上一道假設檢驗的例題,回憶一下假設檢驗的流程,找一下當初的感覺。某工具機廠加...

(六)假設檢驗

假設檢驗的步驟 步驟1 提出原假設與備擇假設 步驟2 指定檢驗中的顯著性水平 步驟3 蒐集樣本資料並計算檢驗統計量的值 p 值方法 步驟4 利用檢驗統計量的值計算p 值 步驟5 如果p 值 a,則拒絕h0 臨界值方法 步驟6 顯著性水平確定臨界值以及拒絕規則 步驟7 利用檢驗統計量的值以及拒絕規則確...