作者neutralID (neutral)
看板Statistics
標題[問題] t test vs. chi-sq contingency test
時間Sat Jul 31 23:47:53 2021
各位大大好,在此有個實務運用的問題想請教大家。
我所在為生科領域,實驗通常是小樣本多次replicates確定有相同趨勢後,
才進行統計分析。實驗效果的評估常常是"比率"(例如死亡率)。
就我粗淺的認知,比率型資料會用chi-square contingency test。
但實務上,常常是先計算各replicate的死亡率再做independent samples t test。
我個人的意見是,先算死亡率相當於是犧牲掉sample size的資訊得到較少的資料點,
而且"比率"的資料分布其實並不符合t test的假設,
所以t test會比chi-sq test更不易顯著。
但實務上卻遇到相反的情形。以下是某次實驗真實數據遇到的狀況。
[基本資訊]
同一個實驗設計,用五批不同的魚各做一次replicate,
分別計算control組與treatment組死亡隻數,比較有無差異。
五次數據如下。
replicate 1
control treatment
survive 9 10
dead 2 1
replicate 2(排列法相同)
21 23
4 2
replicate 3
8 9
2 1
replicate 4
10 10
1 1
replicate 5
9 10
2 1
我建議的做法是先做CMH Test,確認五次replicates無顯著差異,再合併5 replicates
變成:
57 62
11 6
然後做chi-square contingency test,結果control vs. treatment差異未達顯著(
p=0.19)。而同事的做法是計算各replicate死亡率然後做independent samples t test,
也就是先算出:
control: 0.181818 0.160000 0.200000 0.090909 0.181818
treatment: 0.090909 0.080000 0.100000 0.090909 0.090909
再做t test結果有顯著(p<.01)。
為了進一步確認,我寫了個小程式模擬 death rate = 10% 但兩組無差異的狀況下,
5 replicates做t test的false positive rate,結果在alpha設定為0.05時,
誤判率確實低於0.05。因此我覺得t test得出的顯著結論值得採信。
其實若直接觀察上述數據會發現control死亡率大於treatment的現象蠻穩定,
估計出來的variance低,也難怪會顯著。
現在問題是:
1. 整個研究的其他實驗都是用chi-sq test,總不能光只有這個實驗report t test。
但t test有顯著卻不能採用而只能report不顯著好像也說不過去。
2. 有什麼理由可說明這個dataset不適用chi-square test?
3. 還是我犯了什麼基本觀念的錯誤?
有勞大家解惑了。謝謝~
--
1F:→ andrew43: 同事的做法完全忽略樣本數;就算0活1死n=1也記成100%死 08/01 03:52
2F:→ andrew43: 亡率,怎麼合理? 08/01 03:52
我有思考過這個問題。實際上n=1, 10, 100, 1000得到的死亡率variance大不相同,
這也會反映到t test的檢定結果中。
3F:→ andrew43: 另外,5配對樣本檢驗沒有什麼意義。就雙尾精確符號檢驗 08/01 03:59
4F:→ andrew43: 來說,p最小為0.0625,何必檢驗? 08/01 03:59
做的不是配對樣本,是two-sample t test
5F:→ andrew43: 應該先釐清分次抽樣到底是否存在意義,例如不同魚種或 08/01 04:04
6F:→ andrew43: 產地之類的。思考你的抽樣母體到底是什麼。之後再決定 08/01 04:04
7F:→ andrew43: 如何納入分析。直接加總不一定合適。 08/01 04:04
分次做是不得不然,受到實驗準備的限制,例如一次只能容納10隻魚接受實驗刺激。
例如這裡考慮是孵化後第24小時的魚接受刺激後,在第25小時的存活率。
那就會分五天各做一次實驗,每次取剛好孵化24小時的20隻魚,
分一半到control,一半到treatment去做實驗,其他條件一概相同。
※ 編輯: neutralID (1.200.107.229 臺灣), 08/01/2021 10:28:12
8F:→ andrew43: 所以分次可能無實際意義,只不過是不同批次且控制嚴格 08/01 13:41
9F:→ andrew43: ,可視為獨立樣本。 08/01 13:41
10F:→ andrew43: 同事的觀點視批次為實驗區集,卻不採用配對樣本,不能 08/01 13:44
11F:→ andrew43: 理解。 08/01 13:44
了解。我原本也沒意識到用2 sample t會有問題。容我想想。謝謝您提供的見解。
※ 編輯: neutralID (1.200.107.229 臺灣), 08/01/2021 20:34:37
12F:→ raiderho: 假如不管論文其他部分, 直接兩組各68個樣本直接作t-test 08/02 03:12
13F:→ raiderho: 也蠻符合合理的, 結果也是不顯著(p=0.20) 08/02 03:13
14F:→ raiderho: 同事作法真正問題是, 完全浪費樣本數的資訊, 原本有136 08/02 03:14
15F:→ raiderho: 個binary樣本, 被硬生生弄成只有10個樣本, 資訊少更多 08/02 03:14
16F:→ raiderho: 而且, 這10個數字因為取樣小又不定, 數字沒有辦法很穩定 08/02 03:15
17F:→ raiderho: 所以, 不難想像想想, 在兩組同分布的樣本, 可以因為切分 08/02 03:18
18F:→ raiderho: 的不同, 只看批次切分的結果, 反而有統計性差異 08/02 03:19
19F:推 raiderho: 講更具體一點, 把第三次和第五次控制組的一隻死魚給第二 08/02 03:27
20F:→ raiderho: 次,而第二次各拿一隻活魚給第三次和第五次,這樣 08/02 03:28
21F:→ raiderho: 控制組變為 .181818, .24, .1 0.090909, 0.090909,但是 08/02 03:29
22F:→ raiderho: p上升為0.14,這顯示出,這種統計手法的分析不穩健 08/02 03:30
這我同意。其實要用統計說服一般人"看到的只是巧合"本來就不容易,
更別說還做了t test發現有顯著,連我都忍不住寫了模擬程式來驗證。
我想我的模擬可能設計上有疏忽之處,我再想想怎麼做比較合理。
※ 編輯: neutralID (1.200.107.229 臺灣), 08/02/2021 22:39:47
23F:→ andrew43: 各自做一份leave-one-out cross-validation大概足夠了 08/02 23:40
24F:→ paladin499: 我怎麼算出來都沒有顯著 08/09 16:48
26F:→ paladin499: 你同事可能用程式內建的方法算的 可能用錯方法算 08/09 16:48
27F:→ winnie0417: 合併5次樣品是否損失了一些資訊?假設無差異之下,第 08/19 02:05
28F:→ winnie0417: 一次treat死比較多,第二次也是,3次又是,第4平手, 08/19 02:05
29F:→ winnie0417: 第5次又是treat較多。這樣至少不應該是合併計算的p= 08/19 02:05
30F:→ winnie0417: 0.2的答案,一個外行人想法。 08/19 02:05