📑 查看全课大纲(第 3 / 41 节)
- 1.数理统计中的基本概念
- 2.统计量与抽样分布(一)
- 3.统计量与抽样分布(二)
- 4.次序统计量
- 5.充分统计量与完备统计量
- 6.统计中常用分布族(一)
- 7.统计中常用分布族(二)
- 8.矩估计
- 9.极大似然估计
- 10.无偏估计与一致最小方差无偏估计(一)
- 11.无偏估计与一致最小方差无偏估计(二)
- 12.完备统计量
- 13.CR不等式及有效估计
- 14.相合估计
- 15.置信区间
- 16.正态总体参数的置信区间
- 17.大样本置信区间
- 18.Fisher显著性检验
- 19.正态总体参数的假设检验(一)
- 20.正态总体参数的假设检验(二)
- 21.似然比检验
- 22.Neyman-Pearson基本引理
- 23.一致最优势检验
- 24.无偏检验与一致最优势无偏检验
- 25.正态概率纸检验
- 26.拟合优度检验
- 27.列联表的独立性检验
- 28.Kolmogorov检验
- 29.正态性检验
- 30.Bayes统计
- 31.先验分布的确定
- 32.Bayes统计推断
- 33.统计判决理论
- 34.Minimax准则
- 35.非参数统计
- 36.符号检验
- 37.Wilcoxon符号秩检验
- 38.抽样调查
- 39.简单随机抽样
- 40.分层随机抽样
- 41.整群随机抽样
统计量与抽样分布(二)
约 42 分钟
经验分布函数与抽样分布
小象实战讲义 · 数据科学的统计基础
本节我们将深入探讨两个核心概念:经验分布函数与抽样分布。经验分布函数是连接样本与总体分布的关键桥梁,它用样本的频率来逼近总体的概率。而抽样分布则是统计推断的理论基石,它描述了统计量(如样本均值、样本方差)的随机波动规律。掌握这些内容,你将能理解统计推断背后的理论依据,并为后续的参数估计与假设检验打下坚实基础。
💡 核心导读
- 经验分布函数:基于样本构造的阶梯函数,是总体分布函数的“经验”近似。格列文科定理为其提供了坚实的理论保障。
- 抽样分布:统计量的概率分布,是进行统计推断的“地图”。它分为精确分布、渐近分布和近似分布三类。
- 正态总体的抽样分布定理(Fisher引理):当样本来自正态总体时,样本均值与样本方差相互独立,且分别服从正态分布和卡方分布,这是构造t检验、F检验等经典方法的核心。
- 三大重要抽样分布:由正态总体样本构造的t分布、卡方分布和F分布,是后续假设检验中最常用的工具。
经验分布函数:从样本窥见总体
在统计学中,我们通常无法获得总体的全部信息,只能通过样本来进行推断。经验分布函数(Empirical Distribution Function, EDF)就是一种仅基于样本来估计总体分布函数的强大工具。
定义与直观理解
设 是来自某个总体的一个简单随机样本。其经验分布函数 定义为: 其中 是示性函数,当事件 成立时取值为1,否则为0。
直观解释: 表示在 个样本点中,取值不超过 的样本所占的比例(频率)。因此,其核心思想是用频率来逼近概率,即用 来估计总体真实的分布函数 。
经验分布函数也可以写成一个分段函数的形式。将样本观测值按从小到大排序为 ,则: 这是一个右连续的阶梯函数,在每个样本点 处发生一次跳跃,跳跃高度为 (假设样本点互不相同)。
性质与理论保证
经验分布函数 本身是一个统计量,因为它是样本的函数。对于固定的 , 服从二项分布 。根据伯努利大数定律,对于任意固定的 ,当 时,有 。这是一种逐点收敛。
然而,一个更强大、更全局的结论是格列文科定理(Glivenko-Cantelli Theorem): 这个定理表明,经验分布函数与真实分布函数之间的最大偏差(记为 )几乎必然收敛于0。这从理论上保证了,当样本量足够大时,经验分布函数 是总体分布函数 的优良近似。
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
# 模拟经验分布函数与真实分布函数的逼近
np.random.seed(42)
# 真实分布:标准正态分布
true_dist = stats.norm(loc=0, scale=1)
x_grid = np.linspace(-3, 3, 1000)
true_cdf = true_dist.cdf(x_grid)
# 不同样本量下的经验分布函数
sample_sizes = [10, 30, 100]
plt.figure(figsize=(12, 8))
for i, n in enumerate(sample_sizes, 1):
sample = true_dist.rvs(size=n)
# 计算经验分布函数
# 方法:对每个x_grid点,计算样本中<=该点的比例
empirical_cdf = np.array([np.mean(sample <= x) for x in x_grid])
plt.subplot(2, 2, i)
plt.plot(x_grid, true_cdf, 'b-', lw=2, label='真实分布函数 <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>F</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">F(x)</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="katex-base"><span class="katex-strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mord mathnormal" style="margin-right:0.1389em;">F</span><span class="mopen">(</span><span class="mord mathnormal">x</span><span class="mclose">)</span></span></span></span>')
plt.step(x_grid, empirical_cdf, 'r-', where='post', lw=1.5, label=f'经验分布函数 <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msub><mi>F</mi><mi>n</mi></msub><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">F_n(x)</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="katex-base"><span class="katex-strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right:0.1389em;">F</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.1514em;"><span style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span></span><span class="mopen">(</span><span class="mord mathnormal">x</span><span class="mclose">)</span></span></span></span>, n={n}')
plt.fill_between(x_grid, true_cdf, empirical_cdf, color='gray', alpha=0.3, label='偏差区域')
plt.title(f'样本量 n = {n}')
plt.xlabel('x')
plt.ylabel('累积概率')
plt.legend()
plt.grid(True, alpha=0.3)
# 绘制最大偏差 D_n 随样本量增大的变化
plt.subplot(2, 2, 4)
n_values = np.arange(10, 1001, 10)
Dn_values = []
for n in n_values:
sample = true_dist.rvs(size=n)
empirical_cdf = np.array([np.mean(sample <= x) for x in x_grid])
Dn = np.max(np.abs(empirical_cdf - true_cdf))
Dn_values.append(Dn)
plt.plot(n_values, Dn_values, 'g-', lw=2)
plt.axhline(y=0, color='k', linestyle='--', alpha=0.5)
plt.title('格列文科定理图示:<span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msub><mi>D</mi><mi>n</mi></msub></mrow><annotation encoding="application/x-tex">D_n</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="katex-base"><span class="katex-strut" style="height:0.8333em;vertical-align:-0.15em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right:0.0278em;">D</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.1514em;"><span style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span> 随 n 增大而减小')
plt.xlabel('样本量 n')
plt.ylabel('最大偏差 <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msub><mi>D</mi><mi>n</mi></msub></mrow><annotation encoding="application/x-tex">D_n</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="katex-base"><span class="katex-strut" style="height:0.8333em;vertical-align:-0.15em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right:0.0278em;">D</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.1514em;"><span style="top:-2.55em;margin-left:-0.0278em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight">n</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span></span></span></span></span>')
plt.grid(True, alpha=0.3)
plt.tight_layout()
plt.show()抽样分布:统计量的“行为指南”
统计推断的核心是通过样本统计量来推断总体参数。然而,统计量本身也是随机变量,有其自身的概率分布。抽样分布(Sampling Distribution)就是指统计量的概率分布。了解抽样分布,就如同拿到了统计量在反复抽样下的“行为指南”,是进行区间估计和假设检验的前提。
抽样分布的分类
- 精确(抽样)分布:在总体分布已知时,能够精确推导出的统计量的分布。例如,正态总体下样本均值的分布。
- 渐近(抽样)分布:当样本量 时,统计量分布的极限形式。通常由中心极限定理等极限定理得到。
- 近似(抽样)分布:当精确分布难以求出,且样本量不够大时,通过某种近似方法得到的分布。
正态总体的抽样分布定理(Fisher引理)
这是数理统计中最重要的定理之一,为基于正态分布的统计推断提供了理论核心。
定理(抽样分布定理):设 是来自正态总体 的简单随机样本。记样本均值 ,样本方差 。则有:
- 与 相互独立。
- 。
- ,即服从自由度为 的卡方分布。
证明思路(关键步骤):
- 构造随机向量 ,它服从多元正态分布 。
- 构造一个特殊的 正交矩阵 ,其第一行所有元素均为 ,其余行构造满足每行元素之和为0,且行与行之间正交。例如:
- 作正交变换 。根据多元正态分布的性质, 也服从多元正态分布,且其分量相互独立。可以验证:
- ,故 仅与 有关。
- ,故 仅与 有关。
- 由于 与 独立,可推出 与 独立。同时, 推出结论2; 推出结论3。
由抽样分布定理导出的重要分布
基于上述定理,我们可以推导出在假设检验中至关重要的 t 统计量 和 F 统计量 的分布。
1. t 分布(单样本情形) 当总体方差 未知时,为了对均值 进行推断,我们构造 t 统计量: 可以证明: 其中 , ,且 与 独立(由抽样分布定理)。根据 t 分布的定义,有: 即服从自由度为 的 t 分布。
2. F 分布(两样本方差比) 设有两个独立的正态总体:, 。分别从两个总体中抽取样本 和 ,样本方差为 和 。 若想比较两个总体的方差,构造 F 统计量: 根据抽样分布定理,有 , ,且两者独立。根据 F 分布的定义: 特别地,当 时,。
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
# 验证抽样分布定理及t分布、F分布
np.random.seed(2024)
# 1. 验证样本均值与样本方差的独立性(通过模拟协方差)
n = 20
mu, sigma = 5, 2
num_simulations = 5000
sample_means = np.zeros(num_simulations)
sample_vars = np.zeros(num_simulations)
for i in range(num_simulations):
sample = np.random.normal(loc=mu, scale=sigma, size=n)
sample_means[i] = np.mean(sample)
sample_vars[i] = np.var(sample, ddof=1) # 使用无偏估计 (n-1)
# 计算相关系数(独立性意味着相关系数接近0)
corr_coef = np.corrcoef(sample_means, sample_vars)[0, 1]
print(f"样本均值与样本方差之间的样本相关系数: {corr_coef:.4f}")
print("理论上应为0,模拟值接近0说明独立性成立。")
# 2. 验证 (n-1)S^2 / sigma^2 ~ Chi-square(n-1)
scaled_vars = (n - 1) * sample_vars / (sigma ** 2)
# 绘制直方图并与理论卡方分布密度对比
plt.figure(figsize=(12, 5))
plt.subplot(1, 2, 1)
plt.hist(scaled_vars, bins=50, density=True, alpha=0.6, color='skyblue', edgecolor='black', label='模拟值')
x_chi2 = np.linspace(0, stats.chi2.ppf(0.995, n-1), 200)
plt.plot(x_chi2, stats.chi2.pdf(x_chi2, df=n-1), 'r-', lw=2, label=f'<span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msup><mi>χ</mi><mn>2</mn></msup></mrow><annotation encoding="application/x-tex">\chi^2</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="katex-base"><span class="katex-strut" style="height:1.0085em;vertical-align:-0.1944em;"></span><span class="mord"><span class="mord mathnormal">χ</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span></span></span></span></span></span></span></span>({n-1})')
plt.title(f'验证: <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mo stretchy="false">(</mo><mi>n</mi><mo>−</mo><mn>1</mn><mo stretchy="false">)</mo><msup><mi>S</mi><mn>2</mn></msup><mi mathvariant="normal">/</mi><mspace linebreak="newline"></mspace><mi>s</mi><mi>i</mi><mi>g</mi><mi>m</mi><msup><mi>a</mi><mn>2</mn></msup></mrow><annotation encoding="application/x-tex">(n-1)S^2/\\sigma^2</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="katex-base"><span class="katex-strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mopen">(</span><span class="mord mathnormal">n</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="katex-base"><span class="katex-strut" style="height:1.0641em;vertical-align:-0.25em;"></span><span class="mord">1</span><span class="mclose">)</span><span class="mord"><span class="mord mathnormal" style="margin-right:0.0576em;">S</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span></span></span></span></span><span class="mord">/</span></span><span class="mspace katex-newline"></span><span class="katex-base"><span class="katex-strut" style="height:1.0085em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">s</span><span class="mord mathnormal">i</span><span class="mord mathnormal" style="margin-right:0.0359em;">g</span><span class="mord mathnormal">m</span><span class="mord"><span class="mord mathnormal">a</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span></span></span></span></span></span></span></span> 的分布 (n={n})')
plt.xlabel('<span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mo stretchy="false">(</mo><mi>n</mi><mo>−</mo><mn>1</mn><mo stretchy="false">)</mo><msup><mi>S</mi><mn>2</mn></msup><mi mathvariant="normal">/</mi><mspace linebreak="newline"></mspace><mi>s</mi><mi>i</mi><mi>g</mi><mi>m</mi><msup><mi>a</mi><mn>2</mn></msup></mrow><annotation encoding="application/x-tex">(n-1)S^2/\\sigma^2</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="katex-base"><span class="katex-strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mopen">(</span><span class="mord mathnormal">n</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="mbin">−</span><span class="mspace" style="margin-right:0.2222em;"></span></span><span class="katex-base"><span class="katex-strut" style="height:1.0641em;vertical-align:-0.25em;"></span><span class="mord">1</span><span class="mclose">)</span><span class="mord"><span class="mord mathnormal" style="margin-right:0.0576em;">S</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span></span></span></span></span><span class="mord">/</span></span><span class="mspace katex-newline"></span><span class="katex-base"><span class="katex-strut" style="height:1.0085em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">s</span><span class="mord mathnormal">i</span><span class="mord mathnormal" style="margin-right:0.0359em;">g</span><span class="mord mathnormal">m</span><span class="mord"><span class="mord mathnormal">a</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span></span></span></span></span></span></span></span>')
plt.ylabel('密度')
plt.legend()
plt.grid(True, alpha=0.3)
# 3. 验证 t 统计量的分布: T = (X_bar - mu) / (S / sqrt(n)) ~ t(n-1)
t_stats = (sample_means - mu) / (np.sqrt(sample_vars) / np.sqrt(n))
plt.subplot(1, 2, 2)
plt.hist(t_stats, bins=50, density=True, alpha=0.6, color='lightgreen', edgecolor='black', label='模拟值')
x_t = np.linspace(stats.t.ppf(0.001, n-1), stats.t.ppf(0.999, n-1), 200)
plt.plot(x_t, stats.t.pdf(x_t, df=n-1), 'b-', lw=2, label=f't({n-1})')
plt.title(f'验证: T 统计量的分布 (n={n})')
plt.xlabel('T = (<span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mspace linebreak="newline"></mspace><mi>b</mi><mi>a</mi><mi>r</mi><mi>X</mi></mrow><annotation encoding="application/x-tex">\\bar{X}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="mspace katex-newline"></span><span class="katex-base"><span class="katex-strut" style="height:0.6944em;"></span><span class="mord mathnormal">ba</span><span class="mord mathnormal" style="margin-right:0.0278em;">r</span><span class="mord"><span class="mord mathnormal" style="margin-right:0.0785em;">X</span></span></span></span></span> - <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mspace linebreak="newline"></mspace><mi>m</mi><mi>u</mi></mrow><annotation encoding="application/x-tex">\\mu</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="mspace katex-newline"></span><span class="katex-base"><span class="katex-strut" style="height:0.4306em;"></span><span class="mord mathnormal">m</span><span class="mord mathnormal">u</span></span></span></span>) / (S / <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mspace linebreak="newline"></mspace><mi>s</mi><mi>q</mi><mi>r</mi><mi>t</mi><mi>n</mi></mrow><annotation encoding="application/x-tex">\\sqrt{n}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="mspace katex-newline"></span><span class="katex-base"><span class="katex-strut" style="height:0.8095em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">s</span><span class="mord mathnormal" style="margin-right:0.0359em;">q</span><span class="mord mathnormal" style="margin-right:0.0278em;">r</span><span class="mord mathnormal">t</span><span class="mord"><span class="mord mathnormal">n</span></span></span></span></span>)')
plt.ylabel('密度')
plt.legend()
plt.grid(True, alpha=0.3)
plt.tight_layout()
plt.show()
# 4. 验证 F 统计量的分布 (两样本方差比)
n1, n2 = 15, 12
sigma1, sigma2 = 2, 2 # 假设方差相等
num_simulations_f = 5000
f_stats = np.zeros(num_simulations_f)
for i in range(num_simulations_f):
sample1 = np.random.normal(loc=0, scale=sigma1, size=n1)
sample2 = np.random.normal(loc=0, scale=sigma2, size=n2)
var1 = np.var(sample1, ddof=1)
var2 = np.var(sample2, ddof=1)
f_stats[i] = var1 / var2 # 因为 sigma1^2 = sigma2^2
plt.figure(figsize=(6, 4))
plt.hist(f_stats, bins=50, density=True, alpha=0.6, color='orange', edgecolor='black', label='模拟值')
x_f = np.linspace(0, stats.f.ppf(0.99, n1-1, n2-1), 200)
plt.plot(x_f, stats.f.pdf(x_f, dfn=n1-1, dfd=n2-1), 'purple', lw=2, label=f'F({n1-1},{n2-1})')
plt.title(f'验证: <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msubsup><mi>S</mi><mn>1</mn><mn>2</mn></msubsup><mi mathvariant="normal">/</mi><msubsup><mi>S</mi><mn>2</mn><mn>2</mn></msubsup></mrow><annotation encoding="application/x-tex">S_1^2 / S_2^2</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="katex-base"><span class="katex-strut" style="height:1.0641em;vertical-align:-0.25em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right:0.0576em;">S</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-2.4519em;margin-left:-0.0576em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">1</span></span></span><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.2481em;"><span></span></span></span></span></span></span><span class="mord">/</span><span class="mord"><span class="mord mathnormal" style="margin-right:0.0576em;">S</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-2.4519em;margin-left:-0.0576em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.2481em;"><span></span></span></span></span></span></span></span></span></span> 的分布 (方差相等时)')
plt.xlabel('<span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><msubsup><mi>S</mi><mn>1</mn><mn>2</mn></msubsup><mi mathvariant="normal">/</mi><msubsup><mi>S</mi><mn>2</mn><mn>2</mn></msubsup></mrow><annotation encoding="application/x-tex">S_1^2 / S_2^2</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="katex-base"><span class="katex-strut" style="height:1.0641em;vertical-align:-0.25em;"></span><span class="mord"><span class="mord mathnormal" style="margin-right:0.0576em;">S</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-2.4519em;margin-left:-0.0576em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">1</span></span></span><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.2481em;"><span></span></span></span></span></span></span><span class="mord">/</span><span class="mord"><span class="mord mathnormal" style="margin-right:0.0576em;">S</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.8141em;"><span style="top:-2.4519em;margin-left:-0.0576em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span><span style="top:-3.063em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="katex-sizing reset-size6 size3 mtight"><span class="mord mtight">2</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.2481em;"><span></span></span></span></span></span></span></span></span></span>')
plt.ylabel('密度')
plt.legend()
plt.grid(True, alpha=0.3)
plt.tight_layout()
plt.show()📝 动手练一练
经验分布函数的计算:从标准正态分布 中随机抽取一个样本量为10的样本:
[-0.71, 0.36, -0.13, 1.47, -0.23, -1.32, 0.81, 0.92, -0.51, 0.15]。 a) 计算并写出该样本的经验分布函数 的分段表达式。 b) 计算 和 的值。抽样分布的应用:某工厂生产的零件长度服从正态分布 (单位:mm)。质检员每日随机抽取16个零件测量其长度,得到样本均值 。 a) 请问样本均值 服从什么分布?写出其均值和方差。 b) 若某日测得样本均值为 mm,请计算 (假设总体均值 mm)。这个概率值在假设检验中通常被称为什么?
参考答案:
a) 首先将样本排序:。 则: b) :,故 。 :,故 。
a) 根据抽样分布定理,。 b) 当 时,,即标准差为 。 计算 。 。 这个概率值在假设检验中被称为 p值(当原假设 成立时,观察到当前样本或更极端情况的概率)。
本章小结
本节我们构建了从样本通往总体推断的两座关键桥梁。
要点回顾:
- 经验分布函数 是总体分布函数 的样本版本,用频率估计概率。格列文科定理保证了当样本量增大时, 能一致地逼近 。
- 抽样分布是统计量的概率分布,是统计推断的理论基础。它分为精确分布、渐近分布和近似分布。
- 正态总体的抽样分布定理(Fisher引理) 是核心结论:样本均值与样本方差独立;样本均值服从正态分布;样本方差(缩放后)服从卡方分布。
- 基于该定理,我们推导出单样本均值检验使用的 t 分布和两样本方差比较使用的 F 分布。
行动清单:
- 动手验证:运行讲义中的Python代码,直观感受经验分布函数如何随样本量增大而逼近真实分布,并验证t统计量和F统计量的模拟分布与理论曲线是否吻合。
- 理解推导:尝试理解抽样分布定理的证明思路(正交变换),并掌握由它推导出t统计量分布的关键步骤(标准正态与独立卡方之比)。
- 联系应用:思考在产品质量控制(如零件尺寸检验)或实验数据分析(如A/B测试)中,哪些场景会用到本节介绍的t分布或F分布进行统计推断。
— 小象教研组
- 第1章课件:统计量与抽样分布(PPT · 6.0MB)下载
领取《小象 11GB VIP 课件资料包与大厂真题手册》
包含全套实战 Jupyter 源码、清洗后数据集、大厂高频面试真题与专属学员答疑交流群。
- ✔完整 Python / 数据分析 Jupyter 实战源码
- ✔大厂真实业务数据集与练习题
- ✔微信扫码添加课程顾问,免费获取网盘下载链接
微信扫码添加顾问