Math-00.数学分布-11.二项分布

二项分布(Binomial distribution)描述 $n$ 次独立伯努利试验中成功总次数 $X$ 的分布,是统计推断中比例与计数的核心模型。

段末注释i.i.d.(independent and identically distributed)指独立同分布;二项假设每次试验成功概率同为 $p$。

读前说明:离散分布,仅 PMF。系列:00 规划 | 前置:10.伯努利


1. 产生背景与直观

图 1 二项分布直观

伯努利 试验独立重复 $n$ 次,每次成功概率 $p$,问「一共成功几次」。抛 $n$ 次硬币正面次数、$n$ 个突变中有害个数、$n$ 次测序比对成功次数,均属此类。


2. 定义与参数

$X \sim \mathrm{Binomial}(n, p)$:

要素 内容
支撑集 ${0, 1, \ldots, n}$
参数 $n \in \mathbb{N}^+$(试验次数),$p \in (0,1)$(单次成功概率)

3. PMF 与 CDF

图 2 PMF 形态

3.1 PMF

$$
P(X=k) = \binom{n}{k} p^k (1-p)^{n-k}, \quad k=0,1,\ldots,n
$$

其中 $\binom{n}{k} = \dfrac{n!}{k!(n-k)!}$。

3.2 CDF

$$
F(k) = P(X \le k) = \sum_{i=0}^{k} \binom{n}{i} p^i (1-p)^{n-i}
$$

分位数:可用 scipy.stats.binom.ppf 求第 $q$ 分位点。


4. 数字特征

公式
期望 $\mathbb{E}[X] = np$
方差 $\mathrm{Var}(X) = np(1-p)$
众数 $\lfloor (n+1)p \rfloor$ 或 $\lfloor (n+1)p \rfloor - 1$(依 $p$)

$p$ 接近 0.5 且 $n$ 大时,PMF 近似对称。


5. 与其他分布的关系

关系 条件
Bernoulli $n=1$ 时 $\mathrm{Binomial}(1,p)=\mathrm{Bernoulli}(p)$
Poisson 极限 $n \to \infty$, $p \to 0$, $np \to \lambda$ → $\mathrm{Poisson}(\lambda)$ → 12.泊松
正态近似 $n$ 大,$X$ 近似 $\mathcal{N}(np,, np(1-p))$ → 20.正态
负二项 固定成功次数,试验次数随机
Beta–Binomial $p$ 随机时过度离散 → 25.Beta

6. 前提假设

假设 含义 违背时
$n$ 固定 试验次数已知且固定 直到第 $r$ 次成功 → 负二项
i.i.d. 各次独立,同成功概率 $p$ 不独立 → 超几何或相关模型
$p$ 恒定 每次成功概率均为 $p$ 学习效应/批次 → Beta–Binomial
有放回或 $N\gg n$ 总体无限或有放回,$p$ 不因抽样改变 无放回有限总体 → 超几何

段末注释i.i.d.(independent and identically distributed,独立同分布)是二项模型的核心;$N\gg n$ 时超几何可近似二项。


7. 适用场景

图 3 适用场景

场景 示例
比例估计 $n$ 个样本中阳性率 $\hat{p}=k/n$
A/B 测试 两组转化率比较
测序 $n$ 条 read 中比对成功条数
质检抽样 抽检 $n$ 件中不合格数
酶筛选 $n$ 个克隆中活性达标个数

8. 局限与误用

图 4 局限

问题 说明
非独立试验 contagion、批次效应 → 方差膨胀
$p$ 不恒定 应使用 Beta-Binomial 或混合模型
$n$ 小 + 正态近似 应用精确二项或 Clopper-Pearson 区间
过度计数 单位时间事件数 → 泊松
无上限计数 非固定 $n$ → 负二项/泊松
无放回有限总体 16.超几何

9. 参数估计与推断

9.1 MLE

$$
\hat{p} = \frac{k}{n}, \quad \hat{n p} = k
$$

9.2 检验


10. 示例与代码

场景:50 个酶变体中 12 个活性 ≥ WT,检验是否优于随机($p_0=0.2$)。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import numpy as np
from scipy import stats
import matplotlib.pyplot as plt

n, k, p0 = 50, 12, 0.2
p_hat = k / n

# PMF 条形图
ks = np.arange(0, n + 1)
pmf = stats.binom.pmf(ks, n, p_hat)

# 假设检验
result = stats.binomtest(k, n, p=p0, alternative='greater')
print(f"p_hat={p_hat:.3f}, one-sided p-value vs p0={p0}: {result.pvalue:.4f}")

# 置信区间
ci = result.proportion_ci(confidence_level=0.95, method='wilson')
print(f"95% Wilson CI: [{ci.low:.3f}, {ci.high:.3f}]")

# 不同 p 的 PMF 对比
fig, ax = plt.subplots(figsize=(8, 4))
for p, label in [(0.2, 'p=0.2'), (p_hat, f'p_hat={p_hat:.2f}')]:
ax.plot(ks, stats.binom.pmf(ks, n, p), 'o-', ms=3, label=label)
ax.set_xlabel('k'); ax.set_ylabel('PMF'); ax.legend()
ax.set_title('Binomial PMF (n=50)')
plt.savefig('binom_pmf_demo.png', dpi=150)

11. 小结

  • Binomial($n,p$):$n$ 次独立试验成功次数;$\mathbb{E}=np$,$\mathrm{Var}=np(1-p)$。
  • 大 $n$ 小 $p$ → Poisson;大 $n$ → 正态近似。
  • 比例推断与 A/B 测试的离散基础。

系列导航10.伯努利 | 12.泊松


参考文献

  1. scipy.stats.binom
-------------本文结束感谢您的阅读-------------