|
最近在學習統(tǒng)計學,并且試著用R語言解決習題,然而出師不利,在開始不久的一道樣本量計算上就卡住了: 《商務統(tǒng)計學》(人大出版社,第5版)P232,第8章。題目如下: 一家公司調查員工的醫(yī)療費用,希望樣本均值(這里我理解為均值差)在正負50元以內,置信度95%。研究結果表明標準差為400元。 問題:樣本容量必須有多大? 按照手算算法,答案是n=Z^2*sd^2/e^2,Z取1.96,得到1.96^2 * 400^2 / 50^2,答案是246. 本來按照R語言的強大功能,要做這樣的計算還不是小菜一碟,但是大概道行太淺,上面這個答案我在R語言用了兩種方法,都算不到... 1 按照P226頁的pwr.t.test做檢驗。 pwr.t.test(d=.8,power=.99,type="two.sample",alternative="two.sided") 這里d為標準化的均差之值,就是50/400=0.8 power為功效水平,我取0.99;type為單樣本或雙樣本檢驗;缺省值為雙側檢驗。但是結果差好遠。 方法2,在網(wǎng)上搜到一個計算器,可以算出樣本量,并附有R代碼 Test 1 Mean 1-Sample, 2-Sided Equality 按照網(wǎng)頁的算法,結合習題條件,修改代碼如下: sd=400 alpha=0.05 #1類錯誤 beta=0.20 #2類錯誤 (n=(sd*(qnorm(1-alpha/2)+qnorm(1-beta))/50)^2) ceiling(n) z=0.8*sqrt(n) (Power=pnorm(z-qnorm(1-alpha/2))+pnorm(-z-qnorm(1-alpha/2))) 還是算不出來...是不是條件設定有錯?請大牛解惑! 找到一個相關文獻,里面舉的例子和習題很像,雖然沒有代碼,但是大概可以套用公式。有時間要研讀一下! Sample Size and Power Determination————————————————我是分隔線——————————————— 后來我請教了一位在大學教統(tǒng)計的朋友,她讓會R的研究生回答了我的問題: 1. 50不是均值mu,而是均值的置信寬度(ciwidth),所以pwr這個包不適用 2. 這個是近似的正態(tài)分布,但其實應該是t分布 因為現(xiàn)成的package不太適合這種已知標準差和置信區(qū)間寬度,但均值未知的問題,所以還是手動寫程序比較好。 程序如下,兩個方法算出的值比較相近: 雖然還不能完全理解,不過這應該是比較完整的答案了。就醬。 轉自: https://zhuanlan.zhihu.com/p/25811195 |
|
|