如何確定假設檢驗的樣本量(sample size)?


《如何計算假設檢驗的功效(power)和效應量(effect size)?》一文中,我們講述了如何根據顯著性水平α,效應量和樣本容量n,計算功效,以及如何根據顯著性水平α,功效和樣本容量n,計算效應量。但這兩個應用都屬於事后檢驗,也就是說,就算假設檢驗之后計算出的功效或效應量不理想,我們也沒有辦法改變。因此,我們最好事先就把我們想要達到的功效和效應量確定好,然后根據顯著性水平α,功效和效應量,計算樣本容量n。這種事前檢驗的應用用得比較多。

 

此外,我們都知道,如果假設檢驗選取的樣本量很小,那么檢驗結果的可信度就不高,因為每次抽取的樣本波動會很大。但是也不是說樣本量越大越好,因為如果樣本量很大的話,會增加檢驗的成本。比如說做A/B測試,一個公司的流量是有限的,此外,如果用很多用戶來做實驗,試錯成本會很大。因此,在假設檢驗之前確定好一個“最小”的樣本量非常重要。

 

樣本量(sample size):每次抽取的樣本中所含的觀測值的數量。

 

z檢驗(單樣本,樣本和總體均值)中計算樣本量的公式如下:

(單尾)

(雙尾)

注:μa為第二類錯誤中所采用的總體均值的值。

 

雙樣本(兩總體均值)的假設檢驗中,計算樣本量的公式如下:(下圖摘自:https://www.datasciencecentral.com/profiles/blogs/determining-sample-size-in-one-picture

 

應用:根據顯著性水平α,功效和效應量,計算樣本容量n。

(可用G*Power或Statsmodels計算)

如何使用G*Power:https://zhuanlan.zhihu.com/p/62560195

線上計算:https://www.stat.ubc.ca/~rollin/stats/ssize/n2.html

單樣本t檢驗:statsmodels.stats.power.tt_solve_power(effect_size=Nonenobs=Nonealpha=Nonepower=Nonealternative='two-sided')

獨立樣本t檢驗:statsmodels.stats.power.tt_ind_solve_power(effect_size=Nonenobs1=Nonealpha=Nonepower=Noneratio=1.0alternative='two-sided')

卡方擬合優度檢驗:statsmodels.stats.power.GofChisquarePower.solve_power(effect_size=Nonenobs=Nonealpha=Nonepower=Nonen_bins=2)

F方差齊性檢驗:statsmodels.stats.power.FTestPower.solve_power(effect_size=Nonedf_num=Nonedf_denom=Nonenobs=Nonealpha=Nonepower=Nonencc=1)

方差分析:statsmodels.stats.power.FTestAnovaPower.solve_power(effect_size=Nonenobs=Nonealpha=Nonepower=Nonek_groups=2)

 

可以看到,用Statsmodels庫計算功效,效應量和樣本量的函數都是同一個,只要把需要計算的那個值仍然設為None,把其他想要達到的數值填上即可。

 

參考:

https://www.afenxi.com/23249.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM