帰無仮説の下で二項検定をシミュレートする場合のp値の不均一な分布


17

帰無仮説では、p値の分布は均一であるはずだと聞きました。ただし、MATLABの二項検定のシミュレーションでは、平均が0.5(この場合は0.518)を超える非常に異なる不均一分布が返されます。 ここに画像の説明を入力してください

coin = [0 1];
success_vec = nan(20000,1);

for i = 1:20000
    success = 0;
    for j = 1:200
        success = success + coin(randperm(2,1));
    end
    success_vec(i) = success;
end

    p_vec = binocdf(success_vec,200,0.5);
    hist(p_vec);

乱数を生成する方法を変更しようとしても、助けにはなりませんでした。ここで説明をいただければ幸いです。


6
考慮すべき1つのポイントは、2項検定のp値は特定の離散値のみをとることです(分子は離散的です):例として、実験ごとに20回の試行[コインフリップ]では、11個の離散p-返される値。これは、可能なp値であるため、実験ごとにn = 200回の試行、101個の離散p値があります。n/2+1
ジェームズスタンレー

Matlabの「二項検定」は正確に何をしますか?
whuber

2
これはポスターの二項検定であると思われるbinocdf二項のちょうどCDFであるuk.mathworks.com/help/stats/binocdf.html
conjugateprior

回答:


20

値が下で均一な分布を持っているという結果は、ここにあるように、連続的に分散されたテスト統計-少なくともポイントnullで保持されます。H 0pH0

James Stanleyがコメントで言及しているように、検定統計量の分布は離散的であるため、結果は適用されません。コードにエラーがまったくない場合があります(ヒストグラムで離散分布を表示することはありませんが、cdfまたはpmf、または両方の表示を優先します)。

実際には均一ではありませんが、p値の累積分布関数の各ジャンプはそれを行に移動します(これの名前はわかりませんが、おそらく「quasi」のような名前を持つべきです-ユニフォーム'):Fバツ=バツ

ここに画像の説明を入力してください

シミュレートするのではなく、この分布を正確に計算することはかなり可能です-しかし、私はあなたのリードに従い、シミュレーションを行いました(ただし、あなたが持っているよりも大きいものです)。

そのような分布は平均0.5である必要はありませんが、二項分布のが増加すると、ステップcdfはラインにより近くなり、平均は0.5に近づきます。n

p値の離散性の1つの含意は、特定の有意水準のみが達成可能であることです-nullの下のp値の実際の母集団cdfのステップの高さに対応するものです。たとえば、0.056付近または0.04付近のを使用できますが、0.05に近いものは使用できません。α


グレンと@JamesStanleyに感謝します!私はp値分布が均一ではないことを正確に意味し、仮説検定の結果はどうなるかを理解しようとしていますが、そのためにウィキペディアに飛び込むと思います:)
TanZor

3
α

Fバツバツ

A.Donda、Glen_b-ありがとう!あなたはとても助かりました。
TanZor
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.