You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

scipy.stats.binomtest随机测试中p值比例不符合预期的问题排查

二项检验p值结果偏离预期的疑问

我在验证scipy.stats.binomtest的正确性时设计了如下实验:

  • 每个实验包含20次独立赌注,单次赌注成功概率为0.1
  • 重复运行20000次该实验
  • 统计其中p值<0.02的实验占比

按统计理论,原假设成立时,p值小于阈值α的实验占比应该接近α(此处α=0.02),但实际运行结果显示该占比接近0.011,和预期不符。请问这是scipy库的问题,还是我遗漏了某些统计细节?

测试代码

import random
from datetime import datetime
from tqdm import tqdm
from scipy.stats import binomtest

def single_experiment(p, n):
    return [random.random() < p for i in range(n)]

def run(experiments, bet_success_rate):
    random.seed(datetime.now())
    num_bets_in_exp = 20
    pval_threshold = 0.02
    noisy_exp = 0

    for _ in tqdm(range(experiments)):
        exp = single_experiment(bet_success_rate, num_bets_in_exp)
        res = binomtest(sum(exp), num_bets_in_exp, p=bet_success_rate, alternative="greater")
        pval = res.pvalue
        if pval < pval_threshold:
            noisy_exp += 1

    print(noisy_exp / experiments)

实验结果截图

实验结果截图

内容的提问来源于stack exchange,提问作者Ran Moshe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 21:05:19