No.14297 検出力の信頼区間  【まつ】 2011/02/10(Thu) 20:28

平均値の検定における検出力の信頼区間を求める方法について教えて下さい。

ある標本aの平均値が1と異な るかどうかを調べる際の検出力を計算する場合,例えば,Rですと,末尾のコードで検出力は計算できますが,検出力の信頼区間(例えば,95%信頼区間) は,どのようにすれば計算できるのでしょうか?ご教示頂ければ幸いです。また,参考となる資料等がありましたら,合わせてご提示頂ければと思います。
a <- c(0.8, 1.2, 1, 1.1 ,1) # サンプル
b <- 1
power.t.test (n = length(a), delta = mean(a)-b, # powerの計算
sd = sd(a), sig.level = 0.05, type = "one.sample") # powerの計算続き
よろしくお願いいたします。

No.14299 Re: 検出力の信頼区間  【青木繁伸】 2011/02/10(Thu) 22:23

power 自体が,サンプルのバラツキを抑えるもので,さらにその power のバラツキを評価しようということですか。ユニークな試み?なのでしょうか。定式があるかどうか探索する気も起きないので,取りあえずシミュレーションで 解の可能性を探索してみるということで。
例に挙げられたものが,
     One-sample t test power calculation 

n = 5
delta = 0.02
sd = 0.1483240
sig.level = 0.05
power = 0.04261891
alternative = two.sided
という,とんでもないものなので,評価のしようもないものですけど,たとえば
sim <- function(a, b=1)
{
# a <- c(0.8, 1.2, 1, 1.1 ,1) # サンプル
# b <- 1
ans <- power.t.test (n = length(a), delta = mean(a)-b, # powerの計算
sd = sd(a), sig.level = 0.05, type = "one.sample") # powerの計算続き
return(ans$power)
}
n <- 10000
ans.sim <- replicate(n, sim(rnorm(5, mean=1), 1))
hist(ans.sim)
sort.ans.sim <- sort(ans.sim)
cat(sort.ans.sim[c(n*0.025, n*0.975)])
のようなシミュレーションプログラムを書けば,検出力の95%信頼区間として
0.02648287 0.7303707
みたいなものは得られますけど。

No.14300 Re: 検出力の信頼区間  【まつ】 2011/02/11(Fri) 12:27

ありがとうございます。
投稿したあとに,パラメトリックブートストラップを使う方法ならば,とりあえず計算できるかもと思っていたところでした。
事後的に検出力を計算する一つの方法として,検出力だけでなく,その信頼区間を示すことを進める論文がありましたので,お聞きした次第です。ありがとうございました。

● 「統計学関連なんでもあり」の過去ログ--- 044 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る