文章來源:「小白學統計」公眾號,感謝作者授權。
兩兩比較方法的選擇,大概是統計學界爭議最多的一個話題了,直至今天,也沒有一個完全統一的說法。所以,本文雖然說是兩兩比較方法的選擇,但更多的是在基於以往文獻的基礎上,再結合作者本人的經驗和理解,給讀者一些提示。
兩兩比較的方法太多了,正因為太多了,所以往往大家都不知道給怎麼選擇。比如SAS提供了12種兩兩比較方法讓人選擇,SPSS更是毫不吝嗇地給出了18種方法讓你選擇。我想任何一個非統計專業的人都有同一個感覺:你在耍我們嗎?
毫無提示地給出10多種方法,讓我一個毫無統計背景的人自己選擇。就像是醫生給你10多種藥,一臉憐憫地對你說:回家自己看著吃啊,你覺得哪個好就吃哪個。
關鍵是,明知道我們沒有這個判別力,為什麼要給我們這麼多的兩兩比較方法,還得讓我們自己選擇?正是統計學家太多了,每個人都能根據自己的理念提出一種方法,而這些方法看起來似乎都沒錯,那怎麼辦?只好都放在軟體中,你自己跟著感覺走吧。
下面就來說幾種比較常見的兩兩比較方法的選擇,希望給大家稍微理清一點思路。先聲明一下,以下結論是參考了不少國外課本和文獻,加上自己的一點經驗,而且只給出結論性的內容,不給出公式和證明,喜歡追根究底的朋友可以自己看專業書籍。
為什麼要用兩兩比較方法呢?大多數兩兩比較方法的目的都是為了控制假陽性,因為兩兩比較次數多了,容易產生假陽性的結果。
首先說醫學統計課本中最喜歡介紹的3種方法:LSD、SNK和Bonferroni法。我大概翻了一下國內的醫學統計學教程,幾乎都是這3種方法,但似乎都沒有說什麼情況下用。
LSD法其實就相當於t檢驗,只不過它需要在方差分析一定要有統計學差異的情況下才用。所以LSD法並沒有控制假陽性錯誤。一般情況下,如果你在設計初期就有很明確的目的,可以考慮這種方法,因為每一對比較都是有特定意義的,不用非得控制假陽性錯誤。
SNK法是先按多組均值大小排序,然後按一個有點類似於t檢驗的公式分別比較(不過誤差計算不同)。比如a、b、c三組均值分別是a最小,c最大,b居中。那麼比較時,很顯然a和c差別最大,所以在最後的界值上做一些調整。
例如,原來可能t檢驗的界值是2.83,只要t值大於2.83就算有差異,現在把界值調大,比如調到3.40,a和c的比較計算的t值,只有大於3.4才算有差異。這種調整的界值叫做q界值。這種方法對假陽性錯誤的控制依然不到位。所以如果你想控制假陽性,不要選這種方法。
Bonferroni法大概是最流行的一種方法,因為簡單。它的思想是調整檢驗水準,根據比較的次數重新設定檢驗水準,然後根據P值做出結論。比如常規的檢驗水準是0.05,只要P小於0.05就認為有統計學差異。但是如果用Bonferroni法調整,則需要0.05除以比較次數,如比較6次,這時調整後的檢驗水準是0.05/6=0.0083,也就是說,P值小於0.0083才算有差異。
這種方法其實更像是一種檢驗水準調整方法,簡單易用,不僅可以用於均值的兩兩比較,也可用於率的兩兩比較。比如你要做三組的卡方檢驗,想進一步兩兩比較,就可以考慮用這種方式,即分別做兩組的卡方,但是一共比較3次,所以P值小於0.0167才算有差異。這種方法的缺點是,當比較次數多時,結果過於保守,比如比較10次,那就需要P值小於0.005才算有差異,有時很難達到。
再說點其它國內課本上不大介紹但是國外介紹比較多的幾種方法。
下面這兩種方法一般用於各組之間例數相等的情形。
Tukey法,有時也叫Tukey HSD法(Honestly Significant Difference test)。這種方法大概是統計學家最認可一致的方法了,絕大多數統計學家都相信,Tukey法的檢驗效率可能是最高的。Tukey法也是基於q檢驗,大概意思是先確定一個最大差異的臨界值,然後分別對其中兩組比較,看看哪兩組差值大於這個界值,就算有差異。
Tukey法是大多數統計學家首先推薦的兩兩比較方法,不過這種方法只適用於組間例數相等的情況。對於組間例數不等的時候,可用修正的Tukey法,也叫作Tukey-Kramer法。
與Tukey法效率差不多的大概是REGWQ法(不要奇怪這個名字,每個字母代表一個人名,Ryan,Einot,Gabriel ,Welsch;Q表示方法)。REGWQ法與Tukey法都對假陽性錯誤控制的比較好。這種方法一般也只用於各組例數相等的情況。
下面這幾種方法一般可用於各組例數不等的情形。
如果各組例數雖然不同,但差的並不大,可以考慮用Gabriel 檢驗,這種情況下一般效率較高,但如果組間的例數差別較大,一般不要採用這種方法,否則容易結果不穩定。
當各組例數差別較大時,Hochberg's GT2法效率較高,這種方法的思路與Tukey法有點類似,只不過採用的界值不同。這種方法的效率不如Tukey法,尤其在組間例數相等時,它的效率一直不如Tukey法,但與Gabriel的效率基本相當。但在組間例數相差懸殊的時候,可以考慮這種方法。但是如果各組方差相差較大,這種方法很不可靠。
Scheffe法在國外用的也比較多,該法效率也非常高。大概是僅次於Tukey法。有時候你可能會遇到這種情況:方差分析有統計學意義,而兩兩比較卻發現任何兩組都沒有差異。這時候用Scheffe法通常不會出現這種尷尬的場面。
其它情形下的一些方法:
Dunnett檢驗是一種比較特殊的檢驗,它不是用於兩兩比較,而是某些固定的比較。通常情況下是,如果有一個對照組,多個試驗組,多個試驗組之間不做比較,但是每個試驗組分別與對照組作比較,這時候就選擇用Dunnett法。這種比較方式通常都是在研究設計階段就設定好的。
如果各組之間方差差別較大,通常可考慮用Games-Hotwell檢驗,這種方法在方差不等時可以提供更有高的效率,而且允許各組例數不等。但如果每組例數較小,這種方法容易不穩定。
最後的個人小結(僅代表個人觀點):
如果各組例數相等,建議首選Tukey法;如果例數不等,建議首選Scheffe法(如果比較組數不多,如3組,Bonferroni法也可以作為首選);如果要分別比較每個試驗組與對照組,建議採用Dunnett法;如果各組方差相差較大,建議採用Games-Hotwell法。
事實上,每一種兩兩比較方法都有自己的道理,真正在發表文章時,除非方法本身有特定的要求(比如Tukey法只能用於組間例數相等的情形),其實你採用哪種方法可能都不能說錯。有時需要結合自己的研究計劃和研究目的,比如從藥監局的角度,肯定更側重控制假陽性率,從其它不同角度可能有不一樣的目的,這些都可以作為選擇的參考。
關注醫咖會,提升臨床研究水平~
快加小咖個人微信(xys2018ykf),拉你進統計討論群和眾多熱愛研究的小夥伴們一起交流學習。
點擊左下角「閱讀原文」,看看醫咖會既往推送了哪些統計教程。或者使用電腦打開網址:http://www.mediecogroup.com/,查看70種SPSS教程。