← 返回《数据科学的统计基础》
📑 查看全课大纲(第 16 / 41 节)

正态总体参数的置信区间

约 31 分钟

📺 正在播放小象官方高清录播(支持倍速与清晰度调节)

正态总体参数的置信区间

小象实战讲义 · 数据科学的统计基础

在上一节,我们掌握了构造置信区间的一般方法——枢轴量法。本节我们将聚焦于统计学中最核心的分布——正态分布。正态总体在自然界和社会科学中广泛存在,其参数的区间估计是数据分析中最常见、最基础的任务。学完本节,你将能够针对单样本或双样本的正态数据,在方差已知或未知等不同条件下,熟练地计算出总体均值或方差的置信区间,为后续的假设检验和模型推断打下坚实基础。

💡 核心导读

本节将系统学习正态总体参数的置信区间构造,主要内容包括:

  1. 单正态总体:分别讨论总体均值 μ\mu(方差已知/未知)和总体方差 σ2\sigma^2(均值已知/未知)的置信区间。
  2. 两正态总体:重点探讨两总体均值之差 μ1μ2\mu_1 - \mu_2 在不同方差假设下的置信区间,以及方差比 σ12/σ22\sigma_1^2 / \sigma_2^2 的置信区间。
  3. 方法核心:所有推导均基于枢轴量法,关键在于根据已知条件选择合适的抽样分布(标准正态 N(0,1)N(0,1)tt 分布、χ2\chi^2 分布、FF 分布)。
  4. 理解深化:深入辨析置信区间的概率解释,理解置信水平与区间精度之间的权衡关系。
  5. 非正态示例:简要展示如何利用枢轴量法处理非正态总体(如指数分布)的区间估计问题。

单正态总体的置信区间

设总体 XN(μ,σ2)X \sim N(\mu, \sigma^2)X1,X2,,XnX_1, X_2, \ldots, X_n 是来自该总体的一个简单随机样本。样本均值和样本方差分别为: Xˉ=1ni=1nXi,S2=1n1i=1n(XiXˉ)2.\bar{X} = \frac{1}{n} \sum_{i=1}^{n} X_i, \quad S^2 = \frac{1}{n-1} \sum_{i=1}^{n} (X_i - \bar{X})^2.

总体均值 μ\mu 的置信区间

构造 μ\mu 的置信区间,需区分总体方差 σ2\sigma^2 是否已知。

情况一:方差 σ2\sigma^2 已知

σ2\sigma^2 已知时,我们利用样本均值 Xˉ\bar{X} 的精确分布来构造枢轴量。已知 XˉN(μ,σ2/n)\bar{X} \sim N(\mu, \sigma^2/n),标准化后得到: U=Xˉμσ/nN(0,1).U = \frac{\bar{X} - \mu}{\sigma / \sqrt{n}} \sim N(0, 1). UU 是一个合格的枢轴量:它包含了待估参数 μ\mu 和样本,且其分布 N(0,1)N(0,1) 与任何未知参数无关。

对于给定的置信水平 1α1-\alpha(通常 α=0.05\alpha=0.05),存在标准正态分布的上 α/2\alpha/2 分位数 uα/2u_{\alpha/2},使得: P(uα/2Xˉμσ/nuα/2)=1α.P\left( -u_{\alpha/2} \le \frac{\bar{X} - \mu}{\sigma / \sqrt{n}} \le u_{\alpha/2} \right) = 1-\alpha. 对括号内的事件进行等价变形: P(Xˉuα/2σnμXˉ+uα/2σn)=1α.P\left( \bar{X} - u_{\alpha/2} \cdot \frac{\sigma}{\sqrt{n}} \le \mu \le \bar{X} + u_{\alpha/2} \cdot \frac{\sigma}{\sqrt{n}} \right) = 1-\alpha. 因此,μ\mu 的置信水平为 1α1-\alpha 的置信区间为: [Xˉuα/2σn,Xˉ+uα/2σn].\left[ \bar{X} - u_{\alpha/2} \cdot \frac{\sigma}{\sqrt{n}},\quad \bar{X} + u_{\alpha/2} \cdot \frac{\sigma}{\sqrt{n}} \right].

情况二:方差 σ2\sigma^2 未知

σ2\sigma^2 未知时,我们无法使用 UU 统计量。自然的想法是用样本标准差 SS 代替未知的 σ\sigma。根据抽样分布定理,此时有: T=XˉμS/nt(n1).T = \frac{\bar{X} - \mu}{S / \sqrt{n}} \sim t(n-1).TT 服从自由度为 n1n-1tt 分布。TT 是一个枢轴量。

tα/2(n1)t_{\alpha/2}(n-1)t(n1)t(n-1) 分布的上 α/2\alpha/2 分位数,则有: P(tα/2(n1)XˉμS/ntα/2(n1))=1α.P\left( -t_{\alpha/2}(n-1) \le \frac{\bar{X} - \mu}{S / \sqrt{n}} \le t_{\alpha/2}(n-1) \right) = 1-\alpha. 解得 μ\mu 的置信水平为 1α1-\alpha 的置信区间为: [Xˉtα/2(n1)Sn,Xˉ+tα/2(n1)Sn].\left[ \bar{X} - t_{\alpha/2}(n-1) \cdot \frac{S}{\sqrt{n}},\quad \bar{X} + t_{\alpha/2}(n-1) \cdot \frac{S}{\sqrt{n}} \right].

示例:溶液浓度估计 为确定某溶液甲醛浓度,测得4个独立观测值,样本均值 xˉ=8.34%\bar{x} = 8.34%,样本标准差 s=0.03s = 0.03。假设总体服从正态分布,求总体均值 μ\mu 的95%置信区间。

由于方差未知,使用 tt 分布。n=4n=4,自由度 df=3df=3α=0.05\alpha=0.05,查表得 t0.025(3)3.182t_{0.025}(3) \approx 3.182。 置信区间为: 8.34%±3.182×0.034=8.34%±0.04773%.8.34% \pm 3.182 \times \frac{0.03}{\sqrt{4}} = 8.34% \pm 0.04773%.μ\mu 的95%置信区间约为 [8.292%,8.388%][8.292%, 8.388%]

总体方差 σ2\sigma^2 的置信区间

构造 σ2\sigma^2 的置信区间,需区分总体均值 μ\mu 是否已知。我们主要讨论更常见的 μ\mu 未知的情况。

情况一:均值 μ\mu 未知

μ\mu 未知时,我们用样本均值 Xˉ\bar{X} 来估计它。根据抽样分布定理: χ2=(n1)S2σ2=i=1n(XiXˉ)2σ2χ2(n1).\chi^2 = \frac{(n-1)S^2}{\sigma^2} = \frac{\sum_{i=1}^{n} (X_i - \bar{X})^2}{\sigma^2} \sim \chi^2(n-1). χ2\chi^2 是一个枢轴量。χ2\chi^2 分布不是对称的,因此我们需要找到两个分位数 χ1α/22(n1)\chi^2_{1-\alpha/2}(n-1)χα/22(n1)\chi^2_{\alpha/2}(n-1),使得: P(χ1α/22(n1)(n1)S2σ2χα/22(n1))=1α.P\left( \chi^2_{1-\alpha/2}(n-1) \le \frac{(n-1)S^2}{\sigma^2} \le \chi^2_{\alpha/2}(n-1) \right) = 1-\alpha. 对不等式进行变形: P((n1)S2χα/22(n1)σ2(n1)S2χ1α/22(n1))=1α.P\left( \frac{(n-1)S^2}{\chi^2_{\alpha/2}(n-1)} \le \sigma^2 \le \frac{(n-1)S^2}{\chi^2_{1-\alpha/2}(n-1)} \right) = 1-\alpha. 因此,σ2\sigma^2 的置信水平为 1α1-\alpha 的置信区间为: [(n1)S2χα/22(n1),(n1)S2χ1α/22(n1)].\left[ \frac{(n-1)S^2}{\chi^2_{\alpha/2}(n-1)},\quad \frac{(n-1)S^2}{\chi^2_{1-\alpha/2}(n-1)} \right].

情况二:均值 μ\mu 已知

μ\mu 已知,则构造枢轴量时直接使用 μ\mu 而非 Xˉ\bar{X}χ2=i=1n(Xiμ)2σ2χ2(n).\chi^2 = \frac{\sum_{i=1}^{n} (X_i - \mu)^2}{\sigma^2} \sim \chi^2(n). 此时枢轴量服从自由度为 nnχ2\chi^2 分布。类似地,可得到 σ2\sigma^2 的置信区间为: [i=1n(Xiμ)2χα/22(n),i=1n(Xiμ)2χ1α/22(n)].\left[ \frac{\sum_{i=1}^{n} (X_i - \mu)^2}{\chi^2_{\alpha/2}(n)},\quad \frac{\sum_{i=1}^{n} (X_i - \mu)^2}{\chi^2_{1-\alpha/2}(n)} \right].

两正态总体的置信区间

设有两个独立的正态总体: XN(μ1,σ12),YN(μ2,σ22).X \sim N(\mu_1, \sigma_1^2), \quad Y \sim N(\mu_2, \sigma_2^2). 分别从两个总体中抽取样本:X1,,XmX_1, \ldots, X_mY1,,YnY_1, \ldots, Y_n。样本均值和样本方差记为: Xˉ=1mi=1mXi,S12=1m1i=1m(XiXˉ)2,\bar{X} = \frac{1}{m}\sum_{i=1}^{m} X_i, \quad S_1^2 = \frac{1}{m-1}\sum_{i=1}^{m} (X_i - \bar{X})^2, Yˉ=1nj=1nYj,S22=1n1j=1n(YjYˉ)2.\bar{Y} = \frac{1}{n}\sum_{j=1}^{n} Y_j, \quad S_2^2 = \frac{1}{n-1}\sum_{j=1}^{n} (Y_j - \bar{Y})^2.

两总体均值之差 μ1μ2\mu_1 - \mu_2 的置信区间

这是两样本比较的核心问题,根据方差信息的不同,有多种情况。

情况一:方差相等且未知 (σ12=σ22=σ2\sigma_1^2 = \sigma_2^2 = \sigma^2,未知)

这是经典的 两样本 t 区间。首先需要合并两个样本的方差信息,得到合并样本方差: Sp2=(m1)S12+(n1)S22m+n2.S_p^2 = \frac{(m-1)S_1^2 + (n-1)S_2^2}{m+n-2}. 可以证明,枢轴量 T=(XˉYˉ)(μ1μ2)Sp1m+1nt(m+n2).T = \frac{(\bar{X} - \bar{Y}) - (\mu_1 - \mu_2)}{S_p \sqrt{\frac{1}{m} + \frac{1}{n}}} \sim t(m+n-2). 因此,μ1μ2\mu_1 - \mu_2 的置信水平为 1α1-\alpha 的置信区间为: (XˉYˉ)±tα/2(m+n2)Sp1m+1n.(\bar{X} - \bar{Y}) \pm t_{\alpha/2}(m+n-2) \cdot S_p \sqrt{\frac{1}{m} + \frac{1}{n}}.

情况二:方差不等且未知,但样本量充分大 (m,nm, n 都很大)

mmnn 都很大时(通常认为均大于30),根据中心极限定理和 Slutsky 定理,有: (XˉYˉ)(μ1μ2)S12m+S22ndN(0,1).\frac{(\bar{X} - \bar{Y}) - (\mu_1 - \mu_2)}{\sqrt{\frac{S_1^2}{m} + \frac{S_2^2}{n}}} \stackrel{d}{\longrightarrow} N(0, 1). 因此,可以使用近似正态区间: (XˉYˉ)±uα/2S12m+S22n.(\bar{X} - \bar{Y}) \pm u_{\alpha/2} \cdot \sqrt{\frac{S_1^2}{m} + \frac{S_2^2}{n}}.

情况三:方差不等且未知,样本量不大 (Welch’s t 区间)

mmnn 不大,且方差不等时,精确分布非常复杂。Welch (1938) 提出了一种近似方法。构造统计量: T=(XˉYˉ)(μ1μ2)S12m+S22n.T = \frac{(\bar{X} - \bar{Y}) - (\mu_1 - \mu_2)}{\sqrt{\frac{S_1^2}{m} + \frac{S_2^2}{n}}}. TT 近似服从自由度为 rrtt 分布,其中自由度 rr 由以下公式计算(Satterthwaite 近似): r=(S12m+S22n)2(S12/m)2m1+(S22/n)2n1.r = \frac{\left( \frac{S_1^2}{m} + \frac{S_2^2}{n} \right)^2}{\frac{(S_1^2/m)^2}{m-1} + \frac{(S_2^2/n)^2}{n-1}}. 通常 rr 不是整数,可四舍五入取整。则 μ1μ2\mu_1 - \mu_2 的近似置信区间为: (XˉYˉ)±tα/2(r)S12m+S22n.(\bar{X} - \bar{Y}) \pm t_{\alpha/2}(r) \cdot \sqrt{\frac{S_1^2}{m} + \frac{S_2^2}{n}}.

示例:番茄酱罐头重量比较 某厂两条流水线装番茄酱罐头。从第一条线抽6罐,测得 xˉ=10.6\bar{x}=10.6s12=0.002s_1^2=0.002;从第二条线抽7罐,测得 yˉ=10.1\bar{y}=10.1s22=0.003s_2^2=0.003。假设两条线罐头重量服从正态分布,且方差不等。求 μ1μ2\mu_1 - \mu_2 的90%置信区间。

方差不等且样本量小,使用 Welch’s t 区间。

  1. 计算标准误:0.0026+0.00370.000333+0.0004290.0007620.0276\sqrt{\frac{0.002}{6} + \frac{0.003}{7}} \approx \sqrt{0.000333 + 0.000429} \approx \sqrt{0.000762} \approx 0.0276
  2. 计算近似自由度 rrr=(0.000762)2(0.000333)25+(0.000429)265.81×1072.22×108+3.07×1085.81×1075.29×10810.98.r = \frac{(0.000762)^2}{\frac{(0.000333)^2}{5} + \frac{(0.000429)^2}{6}} \approx \frac{5.81 \times 10^{-7}}{2.22 \times 10^{-8} + 3.07 \times 10^{-8}} \approx \frac{5.81 \times 10^{-7}}{5.29 \times 10^{-8}} \approx 10.98.r11r \approx 11
  3. 查表得 t0.05(11)1.796t_{0.05}(11) \approx 1.796
  4. 均值差:10.610.1=0.510.6 - 10.1 = 0.5
  5. 置信区间:0.5±1.796×0.02760.5±0.04960.5 \pm 1.796 \times 0.0276 \approx 0.5 \pm 0.0496,即 [0.4504,0.5496][0.4504, 0.5496]

两总体方差比 σ12/σ22\sigma_1^2 / \sigma_2^2 的置信区间

μ1,μ2\mu_1, \mu_2 均未知时,我们关心方差是否齐性。由抽样分布定理: S12/σ12S22/σ22=S12/S22σ12/σ22F(m1,n1).\frac{S_1^2 / \sigma_1^2}{S_2^2 / \sigma_2^2} = \frac{S_1^2 / S_2^2}{\sigma_1^2 / \sigma_2^2} \sim F(m-1, n-1). FF 统计量是一个枢轴量。设 Fα/2(m1,n1)F_{\alpha/2}(m-1, n-1)F1α/2(m1,n1)F_{1-\alpha/2}(m-1, n-1)F(m1,n1)F(m-1, n-1) 分布的上 α/2\alpha/2 和下 α/2\alpha/2 分位数,则有: P(F1α/2(m1,n1)S12/S22σ12/σ22Fα/2(m1,n1))=1α.P\left( F_{1-\alpha/2}(m-1, n-1) \le \frac{S_1^2 / S_2^2}{\sigma_1^2 / \sigma_2^2} \le F_{\alpha/2}(m-1, n-1) \right) = 1-\alpha. 解得 σ12/σ22\sigma_1^2 / \sigma_2^2 的置信水平为 1α1-\alpha 的置信区间为: [S12/S22Fα/2(m1,n1),S12/S22F1α/2(m1,n1)].\left[ \frac{S_1^2 / S_2^2}{F_{\alpha/2}(m-1, n-1)},\quad \frac{S_1^2 / S_2^2}{F_{1-\alpha/2}(m-1, n-1)} \right]. 注意,F1α/2(m1,n1)=1/Fα/2(n1,m1)F_{1-\alpha/2}(m-1, n-1) = 1 / F_{\alpha/2}(n-1, m-1),可通过查表或计算获得。

非正态总体的区间估计示例

对于非正态总体,若能找到合适的枢轴量,仍可构造精确置信区间。以指数分布 Exp(λ)Exp(\lambda) 为例,其密度函数为 f(x)=λeλx,x>0f(x) = \lambda e^{-\lambda x}, x>0

X1,,Xni.i.d.Exp(λ)X_1, \ldots, X_n \stackrel{\text{i.i.d.}}{\sim} Exp(\lambda)。指数分布是 Gamma 分布的特例,且具有可加性。可以证明(通过特征函数或矩母函数),以下统计量服从卡方分布: η=2λnXˉ=2λi=1nXiχ2(2n).\eta = 2\lambda n \bar{X} = 2\lambda \sum_{i=1}^{n} X_i \sim \chi^2(2n). η\eta 是一个关于参数 λ\lambda 的枢轴量。

对于给定的置信水平 1α1-\alpha,可找到 χ2(2n)\chi^2(2n) 分布的分位数 χ1α/22(2n)\chi^2_{1-\alpha/2}(2n)χα/22(2n)\chi^2_{\alpha/2}(2n),使得: P(χ1α/22(2n)2λnXˉχα/22(2n))=1α.P\left( \chi^2_{1-\alpha/2}(2n) \le 2\lambda n \bar{X} \le \chi^2_{\alpha/2}(2n) \right) = 1-\alpha. 解得 λ\lambda 的置信区间为: [χ1α/22(2n)2nXˉ,χα/22(2n)2nXˉ].\left[ \frac{\chi^2_{1-\alpha/2}(2n)}{2n\bar{X}},\quad \frac{\chi^2_{\alpha/2}(2n)}{2n\bar{X}} \right]. 若求单侧置信上限(例如,在可靠性分析中关心失效率的上限),则有 P(2λnXˉχα2(2n))=1αP\left( 2\lambda n \bar{X} \le \chi^2_{\alpha}(2n) \right) = 1-\alpha,解得 λ\lambda1α1-\alpha 单侧置信上限为 χα2(2n)2nXˉ\frac{\chi^2_{\alpha}(2n)}{2n\bar{X}}

📝 动手练一练

  1. 单样本均值区间估计:某品牌灯泡寿命服从正态分布。质检员随机抽取16只灯泡进行测试,测得平均寿命为1500小时,样本标准差为100小时。请计算该品牌灯泡平均寿命的95%置信区间。

  2. 两样本方差比区间估计:为了比较两种催化剂对化学反应收率的影响,分别用催化剂A和B各进行了10次和12次独立实验。测得收率的样本方差分别为 sA2=4.5s_A^2 = 4.5sB2=3.2s_B^2 = 3.2。假设收率均服从正态分布,请构造两种催化剂收率方差比 σA2/σB2\sigma_A^2 / \sigma_B^2 的90%置信区间。

参考答案:

  1. 方差未知,使用 tt 分布。n=16n=16df=15df=15xˉ=1500\bar{x}=1500s=100s=100t0.025(15)2.131t_{0.025}(15) \approx 2.131。置信区间为 1500±2.131×(100/16)=1500±53.2751500 \pm 2.131 \times (100/\sqrt{16}) = 1500 \pm 53.275,即 [1446.725,1553.275][1446.725, 1553.275] 小时。
  2. 使用 FF 分布。m=10,n=12m=10, n=12sA2/sB2=4.5/3.2=1.40625s_A^2/s_B^2 = 4.5/3.2 = 1.40625。置信水平 1α=0.91-\alpha=0.9α/2=0.05\alpha/2=0.05。需查 F0.05(9,11)F_{0.05}(9, 11)F0.95(9,11)=1/F0.05(11,9)F_{0.95}(9, 11) = 1/F_{0.05}(11, 9)。假设查得 F0.05(9,11)2.90F_{0.05}(9,11) \approx 2.90F0.05(11,9)3.10F_{0.05}(11,9) \approx 3.10,则 F0.95(9,11)1/3.100.3226F_{0.95}(9,11) \approx 1/3.10 \approx 0.3226。置信区间为 [1.40625/2.90,1.40625/0.3226][0.485,4.359][1.40625/2.90, 1.40625/0.3226] \approx [0.485, 4.359]

本章小结

本节系统学习了正态总体参数的置信区间构造方法,这是区间估计理论中最经典、应用最广泛的部分。

要点回顾:

  • 核心方法:枢轴量法是构造置信区间的通用框架。关键在于找到一个包含待估参数和样本的统计量,且其分布完全已知(与未知参数无关)。
  • 分布选择:根据已知条件(方差是否已知、均值是否已知、单样本还是两样本)选择正确的抽样分布:N(0,1)N(0,1)ttχ2\chi^2FF
  • 单正态总体
    • 均值 μ\mu:方差已知用 ZZ 区间,方差未知用 tt 区间。
    • 方差 σ2\sigma^2:均值未知用 χ2\chi^2 区间(自由度为 n1n-1),均值已知也用 χ2\chi^2 区间(自由度为 nn)。
  • 两正态总体
    • 均值差 μ1μ2\mu_1-\mu_2:情况多样。方差相等且未知用合并方差 tt 区间;方差不等大样本用正态近似区间;方差不等小样本用 Welch’s tt 近似区间。
    • 方差比 σ12/σ22\sigma_1^2/\sigma_2^2:使用 FF 分布构造区间。
  • 理解与权衡:置信区间是随机区间,其含义是“区间以一定概率覆盖真值”,而非“真值以一定概率落入某个固定区间”。置信水平 1α1-\alpha 越高,区间越宽(精度越低),二者需要权衡。

行动清单:

  1. 梳理流程图:画一张决策树或流程图,总结从拿到一个正态数据的区间估计问题开始,如何根据“单样本/两样本”、“关心均值/方差”、“方差信息是否已知”等条件,选择正确的统计量和分布。
  2. 编程验证:使用 Python 的 scipy.stats 模块,对上述所有类型的置信区间进行模拟。生成已知参数的正态数据,用公式计算置信区间,并重复多次实验,验证区间覆盖真实参数的频率是否接近设定的置信水平。
  3. 联系假设检验:预习下一章假设检验,你会发现本节构造的枢轴量(如 TTFF 统计量)正是后续进行相应假设检验时所使用的检验统计量。理解它们的一体两面性。

— 小象教研组

import numpy as np
import scipy.stats as stats

# 设置随机种子,确保结果可复现
np.random.seed(321)

# ========== 模拟1:单正态总体均值区间估计 (方差未知) ==========
print("模拟1:单样本t区间覆盖概率验证")
n = 20
true_mu = 100
true_sigma = 15
conf_level = 0.95
alpha = 1 - conf_level
n_simulations = 10000

cover_count = 0
for _ in range(n_simulations):
    # 从正态总体中抽取一个样本
    sample = np.random.normal(loc=true_mu, scale=true_sigma, size=n)
    x_bar = np.mean(sample)
    s = np.std(sample, ddof=1)  # 样本标准差,ddof=1表示除以n-1

    # 计算t分布的临界值
    t_crit = stats.t.ppf(1 - alpha/2, df=n-1)
    # 计算置信区间
    margin_error = t_crit * s / np.sqrt(n)
    ci_low = x_bar - margin_error
    ci_high = x_bar + margin_error

    # 检查真实均值是否在区间内
    if ci_low <= true_mu <= ci_high:
        cover_count += 1

coverage_prob = cover_count / n_simulations
print(f"理论置信水平: {conf_level:.3f}")
print(f"模拟覆盖概率: {coverage_prob:.4f}")
print(f"绝对误差: {abs(coverage_prob - conf_level):.4f}")
print()

# ========== 模拟2:两正态总体均值差区间估计 (Welch's t) ==========
print("模拟2:两样本Welch's t区间验证 (方差不等)")
m, n = 10, 15
mu1, sigma1 = 50, 8
mu2, sigma2 = 52, 12  # 方差不同
true_diff = mu1 - mu2
conf_level = 0.90
alpha = 1 - conf_level
n_simulations = 5000

cover_count = 0
for _ in range(n_simulations):
    sample1 = np.random.normal(loc=mu1, scale=sigma1, size=m)
    sample2 = np.random.normal(loc=mu2, scale=sigma2, size=n)

    x_bar1, s1 = np.mean(sample1), np.std(sample1, ddof=1)
    x_bar2, s2 = np.mean(sample2), np.std(sample2, ddof=1)

    # Welch-Satterthwaite 自由度计算
    se_sq = s1**2/m + s2**2/n
    df = se_sq**2 / ( (s1**2/m)**2/(m-1) + (s2**2/n)**2/(n-1) )
    df = int(np.round(df))  # 取整

    # 计算t临界值和置信区间
    t_crit = stats.t.ppf(1 - alpha/2, df=df)
    margin_error = t_crit * np.sqrt(se_sq)
    ci_low = (x_bar1 - x_bar2) - margin_error
    ci_high = (x_bar1 - x_bar2) + margin_error

    if ci_low <= true_diff <= ci_high:
        cover_count += 1

coverage_prob = cover_count / n_simulations
print(f"真实均值差: {true_diff}")
print(f"理论置信水平: {conf_level:.3f}")
print(f"模拟覆盖概率: {coverage_prob:.4f}")
print()

# ========== 示例3:使用scipy.stats直接计算置信区间 ==========
print("示例3:使用scipy.stats计算单样本均值的置信区间")
# 假设我们有一组实际观测数据
data = np.array([102.3, 98.7, 105.1, 100.5, 97.8, 103.6, 99.2, 101.9, 104.4, 96.5])
conf_level = 0.95

# 使用scipy的t.interval函数直接计算
ci_low, ci_high = stats.t.interval(confidence=conf_level,
                                    df=len(data)-1,
                                    loc=np.mean(data),
                                    scale=stats.sem(data)) # sem: 标准误 (s/sqrt(n))

print(f"样本数据: {data}")
print(f"样本均值: {np.mean(data):.2f}, 样本标准差: {np.std(data, ddof=1):.2f}")
print(f"总体均值 {conf_level*100:.0f}% 置信区间: [{ci_low:.2f}, {ci_high:.2f}]")
配套学习资源与课件
  • 第3章课件:区间估计(PDF · 3.3MB)
    下载
🎁 免费学习资源

领取《小象 11GB VIP 课件资料包与大厂真题手册》

包含全套实战 Jupyter 源码、清洗后数据集、大厂高频面试真题与专属学员答疑交流群。

  • 完整 Python / 数据分析 Jupyter 实战源码
  • 大厂真实业务数据集与练习题
  • 微信扫码添加课程顾问,免费获取网盘下载链接
微信二维码:扫码添加课程顾问微信扫码添加顾问