主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

標本サイズの選択

この例では、統計的検定の実行に必要な標本や観測の件数を決定する方法を示します。ここでは、単純な問題に対する標本サイズの計算を示した後、関数sampsizepwrを使用して、2.つのより現実的な問題に対して検出力と標本サイズを計算する方法を示します。最後に、统计和机器学习工具箱™ の関数を使用して、関数sampsizepwrがサポートしていない検定に必要な標本サイズを計算する方法を示します。

既知の標準偏差を使用した正規平均の片側検定

概念を紹介するために、非現実的な単純な例を使用して、平均を検定し、標準偏差を確認してみましょう。データは連続しており、 正規分布を使用してモデル化できます。ここでは標本サイズ Nを判断し、100という平均と 110という平均を区別できるようにする必要があります。標準偏差は 20であることがわかっています。

統計的検定を実施するとき,通常は対立仮説に対して帰無仮説を検定します。検定統計量Tを求め,帰無仮説のもとでその分布を確認します。たとえば帰無仮説が真の場合の発生確率が5%未満であるなどの異常な値が見つかった場合は,対立仮説を優先して帰無仮説を棄却します(5%の確率は,検定の有意水準と呼ばれます)。値が異常でない場合,帰無仮説は棄却しません。

この場合,検定統計量Tはサンプル平均です。帰無仮説のもとでは、平均は 100 で、標準偏差は 20/sqrt(N) です。まず、N=16 の固定標本サイズを見てみましょう。Tが影の領域、つまり分布の上裾にある場合は、帰無仮説を棄却します。T が下裾にある場合には棄却しないため、これは片側検定になります。この影の領域のカットオフは、平均より上の 1.6 標準偏差になります。

rng (0,“旋风”); mu0=100;sig=20;N=16;α=0.05;conf=1-alpha;截止值=norminv(形态,mu0,sig/sqrt(N));x=[linspace(90,截止点),linspace(截止点,127)];y=normpdf(x,mu0,sig/sqrt(N));h1=曲线图(x,y);xhi=[截止点,x(x>=截止点)];yhi=[0,y(x>=截止值)];补丁(xhi,yhi,“b”);头衔('样本均值分布,N=16');包含(“样本平均值”);ylabel (“密度”);文本(96 .01 sprintf (“拒绝如果意味着> %。4 g \ nProb = 0.05 ',截止),“颜色”“b”);

これは,帰無仮説のものでのTの動作を示していますが,対立仮説のもとではどうでしょうか。対立分布の平均は,赤の曲線で示されるように110です。

mu1 = 110;y2 = normpdf (x, mu1团体/√(N));h2 =线(x, y2,“颜色”“r”);Yhi = [0, y2(x>=cutoff)];补丁(xhi yhi,“r”“FaceAlpha”, 0.25);P = 1 - normcdf(cutoff,mu1,sig/根号(N));文本(115 .06点sprintf (“拒绝如果T > %。4 g \ nProb = % .2g ',截止,P),“颜色”, (1 0 0));传奇((h1 h2),“零假设”备择假设的);

対立仮説が真の場合に帰無仮説を棄却する確率は高くなっています。これは,望むとおりの現象です。確率密度関数(pdf)ではなく累積分布関数(cdf)を見てみると,さらにわかりやすくなります。確率は,面積を計算しなくても,グラフから直接読み取ることができます。

ynull = normcdf (x, mu0团体/√(N));yalt = normcdf (x, mu1团体/√(N));ynull h12 =情节(x,“b-”, x, yalt的r -);zval = norminv(设计);cutoff = mu0 + zval * sig /根号(N);线((90年,截止截止),(参看参看0),“线型”“:”);味精= sprintf ('截止值= 100 + %。2g \\乘以20 / \\surd{n}', zval);文本(截止,酒精含量、味精、“颜色”“b”);文本(min (x)、sprintf (“% % % g测试”100 *α),“颜色”“b”...“verticalalignment”“高级”) palt = normcdf(cutoff,mu1,sig/根号(N));线([90,截止],[palt palt],“颜色”“r”“线型”“:”);文本(91年,palt + .02 sprintf (“权力是1%。2 g = % .2g '、palt 1-palt),“颜色”, (1 0 0));传奇(h12“零假设”备择假设的);

このグラフは,N = 16である場合に2つの異なるμ値に対して有意な統計値を得る(帰無仮説を棄却する)確率を示しています。

検出力関数は,対立仮説が真の場合に帰無仮説を棄却する確率として定義されています。これは,対立仮説の値と標本サイズに依存します。対立仮説値を 110 に固定し、N の関数として検出力 (1 から cdf を減算した値) をグラフにします。検出力が 80% になるように N を選択します。グラフは、約 N=25 が必要であることを示しています。

DesiredPower = 0.80;Nvec = 1:30;cutoff = mu0 + norminv(conf)*sig./sqrt(Nvec);电源= 1 - normcdf(cutoff, mu1, sig./sqrt(Nvec));情节(Nvec、电力、“bo - - - - - -”, 30[0]、[DesiredPower DesiredPower),凯西:”);包含('N =样本量')伊拉贝尔(“权力”)标题('替代方案的功率函数:\mu = 110'

この非常に単純な例では,必要な値を直接計算して80%の検出力を得るための公式を使用します。

mudiff=(mu1-mu0)/sig;N80=ceil((norminv(1-DesiredPower)-norminv(conf))/mudiff^2)
N80=25

これが機能することを確認するため、モンテカルロ シミュレーションを行い、平均が 100であるという帰無仮説と平均が 110であるという対立仮説に基づいて、サイズが 25の標本を 400個生成してみましょう。平均が 100であるかどうかを調べるために各標本を検定する場合は、1.番目のグループの約 5% と 2.番目のグループの約 80% が有意になる必要があります。

nsamples = 400;samplenum = 1: nsamples;N = 25;nsamples h0 = 0 (1);h1 = h0;j = 1:nsamples Z0 = normrnd(mu0,sig,N,1);h0 (j) =中兴通讯(Z0 mu0,团体,α,“对”);Z1 = normrnd (mu1,团体,N, 1);h1 (j) =中兴通讯(Z1、mu0团体,α,“对”);结束P0 = cumsum(h0) ./ samplenum;P1 = cumsum(h1) ./ samplenum;情节(samplenum p0,“b-”,三正全会,p1,的r -)xlabel(的样本数量)伊拉贝尔(的比例显著)标题(“功率计算验证”)传说(“零假设”备择假设的“位置”“东”

不明な標準偏差を使用した正規平均の両側検定

次に,標準偏差がわからない場合に,両側検定,つまり,サンプル平均が高すぎるか低すぎるかによって帰無仮説を棄却する検定を実施するとします。

検定の統計値はt統計値,つまり,サンプル平均と検定対象の平均の差を平均の標準誤差で割ったものです。帰無仮説のもとでは,これはn - 1の自由度をもつスチューデントのt分布を含みます。対立仮説のもとでは、分布は、真の平均と検定対象の平均の正規化された差に等しい非心度パラメーターをもつ非心 t 分布になります。

この両側検定に対しては,帰無仮説のもとで,両方の裾に等しい5%の誤差確率を割り当て,検定統計量がどちらかの方向において極端すぎる場合に棄却する必要があります。また,どの対立仮説のもとでも両方の裾を考慮する必要があります。

N = 16;df = n - 1;α= 0.05;参看= 1α;cutoff1 = tinv(α/ 2,df);cutoff2 = tinv(1α/ 2,df);X = [linspace(-5,cutoff1), linspace(cutoff1,cutoff2),linspace(cutoff2,5)];y = tpdf (x, df);h1 =情节(x, y);xlo = [x (x < = cutoff1) cutoff1]; ylo = [y(x<=cutoff1),0]; xhi = [cutoff2,x(x>=cutoff2)]; yhi = [0, y(x>=cutoff2)]; patch(xlo,ylo,“b”);补丁(xhi yhi,“b”);头衔(’t统计量分布,N=16’);包含(“t”);ylabel (“密度”); 文本(2.5.05,sprintf(“拒绝如果t > %。4 g \ nProb = 0.025 'cutoff2),“颜色”“b”);文本(-4.5,0。,sprintf (如果t < %的拒绝。4 g \ nProb = 0.025 ',截止日期1),“颜色”“b”);

帰無仮説のみのもとでの検出力関数と,μの単一の対立仮説値を調べる代わりに,それをμの関数として見ることができます。検出力は,μがどちらかの方向において帰無仮説から遠ざかるにつれて増加します。検出力を計算するには,関数sampsizepwrを使用できます。検出力の計算には、標準偏差の値を指定する必要があります。これは約 20になることが予想されます。標本サイズ N=16の検出力関数の図は次のようになります。

N = 16;x = linspace (90127);功率= sampsizepwr (“t”20 [100], x, [], N);情节(x,权力);包含(“真正的意思是“)伊拉贝尔(“权力”)标题(' N=16的幂函数'

110年平均がのときに検出力が80%になる必要があります。このグラフによると,N = 16という標本サイズでは検出力が50%未満になります。どの標本サイズを使用すれば目的の検出力が得られるのでしょうか。

N = sampsizepwr (“t”20[100], 110年,0.8)
N = 34

約34という標本サイズが必要です。前の例と比較すると,不明な真の標準偏差を補って両側検定を行うには,観測値を9個追加する必要があります。

検出力関数のプロットは,さまざまなNの値に対して作成できます。

Nvec = 2;功率= sampsizepwr (“t”, 110年20 [100],[],Nvec);情节(Nvec、电力、“bo - - - - - -”, 40 [0], [DesiredPower DesiredPower),凯西:”);包含('N =样本量')伊拉贝尔(“权力”)标题('替代方案的功率函数:\mu = 110'

そして,前回と同じようなシミュレーションを実行し,必要な検出力が得られるかどうかを確認できます。

nsamples = 400;samplenum = 1: nsamples;N = 34;nsamples h0 = 0 (1);h1 = h0;j = 1:nsamples Z0 = normrnd(mu0,sig,N,1);h0 (j) = tt (Z0 mu0,α);Z1 = normrnd (mu1,团体,N, 1);h1 (j) = tt (Z1、mu0α);结束P0 = cumsum(h0) ./ samplenum;P1 = cumsum(h1) ./ samplenum;情节(samplenum p0,“b-”,三正全会,p1,的r -)xlabel(的样本数量)伊拉贝尔(的比例显著)标题(“功率计算验证”)传说(“零假设”备择假设的“位置”“东”

50という標本サイズを用意する余裕があるとします。対立仮説値 mu=110 を検出するための検出力は 80% より大きくなることが予想されます。80% の検出力を維持する場合は、どのような対立仮説を検出できるでしょうか。

mu1 = sampsizepwr (“t”20[100],[]。8,50)
mu1 = 108.0837

比率の検定

次に、2.つの比率を区別するために必要な標本サイズを判断する問題を考えましょう。約 30% の人々が候補者を支持している人口をサンプリングする場合において、この値を 33% とは区別できるだけの十分な数の人々をサンプリングするとします。

ここでの観念は,前回と同じです。ここでは,サンプル数を検定統計量として使用できます。この数には二項分布が含まれています。任意の標本サイズNに対して,帰無仮説P = 0.30を棄却するためのカットオフを計算できます。たとえばN = 100の場合は,サンプル数が以下のように計算されたカットオフ値よりも大きい場合に帰無仮説を棄却します。

N = 100;α= 0.05;p0 = 0.30;p1 = 0.33;cutoff = binoinv(1-alpha, N, p0)
截止= 38

二項分布は離散分布であるため,複雑さが伴います。カットオフ値を超過する確率は,正確に5%ではありません。

1 - binocdf(截止,N, p0)
ans = 0.0340

ここでも,標本サイズの範囲における対立仮説値P = 0.33に対する検出力を計算しましょう。ここでは30%より大きい対立仮説値のみに注目する必要があるため,片側(右裾)検定を使用します。

Nvec = 50:50:2000;功率= sampsizepwr (“p”Nvec, p0, p1, [],“尾巴”“对”);情节(Nvec、电力、“bo - - - - - -”2000年,[0],[DesiredPower DesiredPower),凯西:”);包含('N =样本量')伊拉贝尔(“权力”)标题('替代方案的幂函数:p = 0.33'

関数sampsizepwrを使用して,80%の検出力に必要な標本サイズを要求します。

approxN = sampsizepwr (“p”0.80 p0, p1, [],“尾巴”“对”
警告:值N>200是近似值。将功率绘制成N的函数可以显示具有所需功率的较低的N个值。approxN = 1500

警告メッセージにより,回答は近似であることが伝えられます。異なる標本サイズに対して検出力関数を見てみると,二項分布は離散であるため,関数は一般的に増加しますが,不規則であることがわかります。1470 ~ 1480年の標本サイズ範囲において,p = 0.30およびp = 0.33の両方に対して帰無仮説を棄却する確率を見てみましょう。

次要情节(1,1);Nvec = 1470:1480;功率= sampsizepwr (“p”Nvec, p0, p1, [],“尾巴”“对”);情节(Nvec、电力、“ro - - - - - -”[min (Nvec), max (Nvec)], [DesiredPower DesiredPower),凯西:”);ylabel (sprintf ('Prob[T>cutoff]\n如果p=0.33') h_gca = gca;h_gca。XTickLabel ='';ylim([。78 .82]);次要情节(3、1、2);阿尔夫= sampsizepwr (“p”Nvec p0, p0, [],“尾巴”“对”); 地块(Nvec、alf、,“bo - - - - - -”[min (Nvec), max (Nvec)],[αα],凯西:”);ylabel (sprintf (的概率(T >截止)\ nif p = 0.30 ') h_gca = gca;h_gca。XTickLabel ='';ylim([。04、06]);次要情节(3,1,3);cutoff = binoinv(1-alpha, Nvec, p0);情节(Nvec截止,“去,”);包含('N =样本量')伊拉贝尔(“截止”

このプロットは,検出力関数の曲線(上部のプロット)が不規則なだけでなく,一部の標本サイズで減少していることを示しています。これらの標本サイズでは,5%以下の有意水準(中央のプロット)を保持するためにカットオフ値(下部のプロット)を増加する必要があります。この範囲内で,目的の80%の検出力を提供するより小さい標本サイズを見つけることができます。

分钟(Nvec(功率> = 0.80))
ans=1478

相関の検定

これまでに検討した例では,特定の有意レベルを達成するための検定統計量のカットオフを求め,対立仮説のもとでそのカットオフを超える確率を計算することができました。最後の例では,少し難しい問題を考えてみましょう。

2つの変数XおよびYからのサンプルを使用する場合に,これらが相関していないか,あるいは相関が最高で0.4にも及ぶことがあるかを検査するために必要な標本サイズを知りたいとします。サンプルの相関の分布をt分布に変換することで解を得ることは可能ですが,検定統計量の分布に対処できない問題においても使用できる方法を採用してみましょう。

任意の標本サイズに対してモンテカルロシミュレーションを使用すると,相関の検定に適したカットオフ値を判断できます。大きなシミュレーションを実行してこの値を正確に求めてみましょう。まず25の標本サイズから始めます。

nsamples = 10000;N = 25;α= 0.05;参看= 1α;r = 0(1、nsamples);j = 1:nsamples xy = normrnd(0,1,N,2);r (j) = corr (xy (: 1), xy (:, 2));结束截止=分位数(r, conf)
截止= 0.3372

次に,対立仮説に基づいてサンプルを生成し,検定の検出力を推定します。

nsamples = 1000;μ= [0;0);Sig = [1 0.4;0.4 - 1];r = 0(1、nsamples);j = 1:nsamples xy = mvnrnd(mu,sig,N);r (j) = corr (xy (: 1), xy (:, 2));结束(电力、powerci) = binofit(和(r >截止),nsamples)
Power = 0.6470 powerci = 0.6165 0.6767

検出力は65%であると推定し,95%の信頼をもって真の値が62% ~ 68%の範囲内にあるとします。80%の検出力を得るには,より大きな標本サイズが必要です。Nを50に増加し,この標本サイズのカットオフ値を推定して,検出力のシミュレーションを繰り返すことができます。

nsamples = 10000;N = 50;α= 0.05;参看= 1α;r = 0(1、nsamples);j = 1:nsamples xy = normrnd(0,1,N,2);r (j) = corr (xy (: 1), xy (:, 2));结束Cutoff = quantile(r,conf) nsamples = 1000;μ= [0;0);Sig = [1 0.4;0.4 - 1];r = 0(1、nsamples);j = 1:nsamples xy = mvnrnd(mu,sig,N);r (j) = corr (xy (: 1), xy (:, 2));结束(电力、powerci) = binofit(和(r >截止),nsamples)
Cutoff = 0.2315 power = 0.8990 powerci = 0.8786 0.9170

この標本サイズでは,80%の目標を上回る検出力が得られます。このようにして試行錯誤を繰り返すと,ここでの要件を満たす50未満の標本サイズを見つけることができます。

まとめ

统计和机器学习工具箱の確率関数を使用すると,仮説検定で要求される検出力のレベルを実現するために必要な標本サイズを判断できます。問題によっては,標本サイズを直接計算できる場合と,正しい値が見つかるまで標本サイズの範囲を探し求める必要が生じる場合があります。乱数発生器は,目的の検出力が満たされているかどうかを確認するのに役立ちます。また,対立条件下で特定の検定のパワーを調べるためにも使用できます。