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

二项分布样本成功率双尾假设检验求助:p值结果异常

问题诊断与修正

核心错误点

  • 样本2成功率计算笔误:代码中hatP2 = x1/n2是错误的,应该用样本2的成功数x2计算,即hatP2 = x2/n2,误用样本1的成功数导致两组成功率差值计算完全错误。
  • 双尾p值计算逻辑错误:当Z值为负数时,1 - stats.norm.cdf(Z)会得到大于0.5的结果,乘以2后必然超出p值0-1的合理范围。正确的双尾p值计算应基于Z的绝对值,利用正态分布的对称性处理。

修正后的代码

import math
import scipy.stats as stats

x1=195
x2=5481
n1=135779
n2=81530

# 合并成功率计算(简化等价写法)
hatP = (x1 + x2)/(n1 + n2)
hatQ = 1 - hatP
# 修正样本成功率计算
hatP1 = x1/n1
hatP2 = x2/n2
# 计算Z统计量
Z = (hatP1 - hatP2)/(math.sqrt(hatP*hatQ*(1/n1 + 1/n2)))
# 正确双尾p值计算方式
pVal = 2 * stats.norm.cdf(-abs(Z))
# 等价写法:2*(1 - stats.norm.cdf(abs(Z)))

print(f"Z: {Z}")
print(f"pVal: {pVal}")

结果说明

修正后,样本2的实际成功率(约0.0672)远高于样本1(约0.0014),Z值会呈现绝对值较大的负数,对应的p值会远小于1,完全符合统计学中p值的合理范围。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 18:36:23