在原假设下模拟二项式检验时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
需要考虑的一点是,二项式检验的p值将仅采用某些离散值(因为分子是离散的):例如,每个实验仅进行20次试验(硬币翻转),只有11个离散的p-值可以返回的值。这是可能的p值,因此每个实验n = 200次试验,有101个离散的p值。n/2+1
詹姆斯·斯坦利

Matlab的“二项式检验”究竟是做什么的?
ub

2
看来,这是发帖人的二项式检验,binocdf仅仅是二项式uk的CDF。uk.mathworks.com/help/stats/binocdf.html
共轭

Answers:


20

值在下具有均匀分布的结果适用于连续分布的测试统计信息-至少对于点空值(如此处所示)。ħ 0pH0

正如James Stanley在评论中提到的那样,测试统计量的分布是离散的,因此该结果不适用。您的代码中可能根本没有错误(尽管我不会显示带有直方图的离散分布,但我倾向于显示cdf或pmf,或者两者都更好)。

虽然实际上并不统一,但p值的cdf中的每次跳转都将其带到(我不知道这个名称,但是应该有一个名称,也许像“准” -制服'):F(x)=x

在此处输入图片说明

完全可以计算此分布,而不是模拟,这很可能-但我已经按照您的指导进行了模拟(尽管比您大)。

这样的分布不必取平均值0.5,尽管随着二项式中的增加,步长cdf将更加接近该线,平均值将接近0.5。n

p值离散性的一个暗示是,只能达到某些显着性水平-那些与空值下p值的实际总体cdf中的步高相对应的显着性水平。因此,例如,接近0.056,或者 0.0可以接近0.04,但不能接近0.05。α


感谢Glen和@JamesStanley!我试图弄清楚p值分布不均匀到底是什么意思,以及在假设检验方面的后果是什么-但为此,我想我将直接进入维基百科:)
TanZor

3
α

F(x)x

A.Donda,Glen_b-谢谢!你是一个很大的帮助。
TanZor
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.