ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

数理统计基础入门:从描述性统计到假设检验的完整指南

数理统计基础入门:从描述性统计到假设检验的完整指南

数理统计这门东西,很多人第一次接触时的感受都差不多:公式看得懂,例题也能跟上,但合上书就不知道它到底在解决什么问题。我最初学的时候也这样,直到后来真正拿它去处理一批实验数据,才反过来明白那些分布、估计量、假设检验到底在干嘛。这篇内容就是把我自己踩过的坑和后来带新人时反复讲的那些点整理出来,围绕“数理统计基础知识”这个主题,把从描述性统计到参数估计、假设检验的主干逻辑串一遍。它适合刚上手数据分析的读者,也适合学过一遍但概念还糊着的朋友——不管你是做实验、做运营还是写代码,只要你要从一堆数字里得出结论,这些基础都用得上。

1. 先搞清楚数理统计到底在解决什么问题

1.1 从“手里有数据”到“心里有结论”的桥梁

数理统计的核心任务,说白了就一句话:用有限的样本去推断无限的总体。你手里永远只有一部分数据,但你想要的结论是关于全部的。比如你想知道某条产线上所有产品的平均寿命,不可能把每个产品都测到坏,只能抽一批来测,然后根据这批的结果去猜整体。这个“猜”不是拍脑袋,而是有严格数学框架的推断,这就是数理统计的价值所在。

理解这一点非常关键,因为它决定了你后面学每个概念时的定位。概率论是“已知总体推样本”,告诉你如果总体是这样,抽出来的样本会长什么样;数理统计是反过来的“已知样本推总体”,是逆问题。方向一反,很多公式的形态就不一样了,比如估计量里为什么会出现 n-1 而不是 n,根子就在这里。我见过不少人把这两门课混着学,结果假设检验的拒绝域怎么定都想不通,其实就是没把方向理清。

从实操角度看,这个“桥梁”由三块砖搭成:描述性统计负责把原始数据压缩成几个有代表性的数字;参数估计负责给出总体参数的猜测值和精度;假设检验负责判断某个关于总体的说法是否站得住脚。这三块是递进关系,前一块是后一块的输入。你拿到任何一份数据,基本都可以按这个顺序往下走,思路不会乱。

1.2 总体、样本、统计量:三个必须先钉死的概念

这三个词看起来简单,但用错的人特别多。总体是你真正关心的全部对象的集合,它可以有限也可以无限,可以是具体的人也可以是抽象的测量值。样本是从总体里按某种规则抽出来的一部分,注意“按规则”三个字很重要,随手抓一把不叫随机样本。统计量是样本的函数,只依赖样本、不含任何未知参数,比如样本均值、样本方差都是统计量。

为什么要把“不含未知参数”这条卡这么死?因为统计量是要拿来推断未知参数的,如果它自己就依赖未知参数,那就成了循环论证。举个例子,样本均值 x̄ 是统计量,因为它只用到样本值;但如果你写一个“总体均值减样本均值”,这就不是统计量,因为总体均值未知。这个区分在做区间估计和构造检验统计量时天天要用,含糊不得。

还有一个容易被忽略的点:统计量本身是随机变量。因为样本是随机抽的,换一批样本,样本均值就变了。所以样本均值也有自己的分布,叫抽样分布。很多人学到这里卡住,是因为还停留在“均值就是一个数”的直觉里。你得把它当成一个会波动的量,后面的标准误、置信区间、p 值全都是建立在这个“波动”之上的。我当初就是没转过这个弯,导致置信区间的含义理解错了很久。

1.3 描述性统计:别小看这几个数字

拿到数据第一步永远是描述性统计,它不高级但极其重要。核心就几个量:均值反映集中趋势,方差和标准差反映离散程度,中位数和四分位数反映分布形状和抗异常值能力,偏度和峰度刻画分布的不对称和尾部厚度。这几个数字组合起来,基本能让你对数据有个整体画像。

这里有个实操心得:永远先画图再看数字。我踩过的坑是拿到一批数据直接算均值,结果均值被几个极端值拉得离谱,后来画了箱线图才发现有一批异常记录。均值对异常值极其敏感,而中位数稳健得多。所以我的习惯是:先看直方图和箱线图,再决定用均值还是中位数做代表值。这个顺序反了,很容易得出误导性结论。

标准差和方差的关系也要说清楚。方差是标准差的平方,单位是原单位的平方,不好解释;标准差回到原单位,所以报告时通常用标准差。样本方差公式里除以 n-1 而不是 n,是为了让它是总体方差的无偏估计。这个“无偏”的概念后面还会反复出现,这里先记住:除以 n-1 是修正了用样本均值代替总体均值带来的自由度损失。样本量小的时候这个差别明显,样本量大了几乎可以忽略,但原理上必须用 n-1。

2. 概率分布:推断的地基

2.1 为什么统计推断离不开分布

前面说统计量是随机变量,那它波动成什么样,就得用分布来描述。分布就是给随机变量的每个取值(或取值区间)配上概率的规则。数理统计里绝大多数推断方法,本质上都是在利用“统计量服从某个已知分布”这一事实。比如样本均值在总体方差已知时服从正态分布,这个结论直接支撑了后面的区间估计和检验。

所以学分布不是为了背公式,而是为了知道在什么条件下、哪个统计量、服从哪个分布。这三要素凑齐了,推断才有依据。我建议把常见分布整理成一张表,标注清楚它们的适用场景、参数含义、期望方差,用的时候直接查,比死记硬背强得多。下面这张表是我自己常用的版本,覆盖了入门阶段最核心的几个分布。

分布典型场景关键参数期望方差
正态分布连续测量值、均值近似均值 μ、标准差 σμσ²
二项分布n 次独立试验的成功次数试验次数 n、成功概率 pnpnp(1-p)
泊松分布单位时间/空间内稀有事件计数发生率 λλλ
卡方分布方差推断、拟合优度检验自由度 kk2k
t 分布方差未知时的均值推断自由度 k0(k>1)k/(k-2)(k>2)
F 分布两方差比较、方差分析两个自由度——

2.2 正态分布为什么是“万金油”

正态分布在数理统计里地位特殊,原因有两层。第一层是中心极限定理:不管总体是什么分布,只要样本量足够大,样本均值的分布就近似正态。这条定理是很多推断方法在大样本下依然好用的根本保障。第二层是很多自然现象和测量误差本身就近似正态,所以它不只是数学上的便利,也有现实基础。

中心极限定理的实操意义在于:它告诉你样本量多大才够用。经验上 n≥30 时正态近似通常就不错了,但如果总体本身偏得很厉害(比如重尾分布),30 可能不够,得往上加。我处理过一批明显右偏的时长数据,n=50 时样本均值的分布还是有点偏,加到 100 以上才比较像正态。所以“30 法则”是个起点不是铁律,得看总体形状。

正态分布还有个性质要记住:线性组合仍是正态。也就是说,若干个正态随机变量的加权和还是正态的。这个性质在做误差传播、构造检验统计量时特别有用。比如两个独立正态样本的均值之差,仍然是正态分布,方差是两个方差之和。这类推导在假设检验里到处都是,理解了这条就不用每次从头推。

2.3 t 分布、卡方分布、F 分布的分工

这三个分布都是从正态分布派生出来的,分工很明确。t 分布用于总体方差未知、用样本方差代替时的均值推断,它比正态分布尾部更厚,因为多了一层样本方差带来的不确定性,自由度越小尾部越厚。卡方分布是标准正态变量平方和的分布,主要用于方差的推断和拟合优度检验。F 分布是两个卡方分布各自除以自由度后的比值分布,用于比较两个方差。

理解它们的派生关系比单独记每个分布有用得多。比如 t 统计量的构造是“样本均值减总体均值,再除以标准误”,分子是正态,分母里含样本方差(与卡方有关),两者独立时比值就服从 t 分布。这个构造逻辑清楚了,你就能明白为什么 t 检验要求数据近似正态——因为分子得是正态的。自由度为什么是 n-1 也顺理成章:样本方差里用掉了一个自由度去估计均值。

实操中一个常见误区是该用 t 的时候用了正态。当样本量小、总体方差未知时,用正态分布做区间估计会低估不确定性,导致置信区间偏窄、检验偏激进。现在软件默认都会用 t,但如果你手算或者用一些老工具,得自己留个心眼。反过来,样本量很大时 t 和正态几乎没差别,这时候用哪个都行。

3. 参数估计:给出猜测,还要给出精度

3.1 点估计:怎么选一个“好”的估计量

点估计就是用一个统计量的值去猜总体参数。同一个参数可以有很多估计量,比如估计总体均值,你可以用样本均值、样本中位数、甚至去掉最大最小后的截尾均值。那怎么判断哪个好?评价标准主要有三条:无偏性、有效性、一致性。

无偏性指估计量的期望等于真值,也就是平均来看不偏不倚。样本均值是总体均值的无偏估计,样本方差(除以 n-1)是总体方差的无偏估计,这两个是必须记住的结论。有效性指在无偏的估计量里方差更小的更好,方差小意味着波动小、更稳定。一致性指样本量趋于无穷时估计量依概率收敛到真值,这是大样本性质,样本均值、样本方差都满足。

这里有个反直觉的点:无偏不一定最优。经典的例子是估计正态分布的方差,除以 n 的估计量是有偏的,但它的均方误差反而可能比无偏的除以 n-1 更小。所以选估计量不能只看无偏,还得看你要优化什么目标。实际工作中,如果样本量不大又很在意偏差,用无偏的;如果更在意整体误差,有偏但方差小的也可能更合适。这个取舍没有标准答案,得看场景。

3.2 最大似然估计:最常用的构造方法

最大似然估计(MLE)是构造估计量最常用的方法,思路很直白:哪个参数值让当前观测到的样本出现的概率最大,就选哪个。具体操作是把样本的联合概率(似然函数)写出来,对参数求导令其为零,解出估计值。对于很多常见分布,MLE 都有解析解,比如正态分布的均值 MLE 就是样本均值,方差的 MLE 是除以 n 的样本方差(注意是有偏的那个)。

MLE 好在哪?它有大样本下的优良性质:一致性、渐近正态、渐近有效。也就是说样本量大了以后,MLE 基本是最好的选择之一。而且它有一套通用的构造流程,遇到新分布也能照着做。缺点是小样本下可能是有偏的,而且有时候没有解析解,得用数值优化。我实际用的时候,如果样本量够大就直接上 MLE,小样本会再对比一下其他估计量。

实操提醒:似然函数连乘容易数值下溢,所以实际计算都取对数变成对数似然,把连乘变连加。这个技巧几乎所有统计软件内部都这么干,你自己写代码时也要注意。另外多参数情况下要对每个参数分别求偏导,解方程组,计算量不小,一般交给现成库处理,但原理得清楚,不然调包出了问题都不知道哪错了。

3.3 区间估计:把“猜”变成“猜一个范围”

点估计只给一个数,但样本有波动,这个数本身不可靠。区间估计给的是一个范围,并附上置信水平,比如“95% 置信区间是 [a, b]”。这里有个极其常见的误解:95% 置信区间不是说真值有 95% 的概率落在这个区间里。真值是固定的,要么在要么不在,概率是 0 或 1。正确的理解是:如果重复抽样很多次,每次构造一个区间,大约 95% 的区间会包含真值。置信水平描述的是构造方法的可靠性,不是某一次区间的概率。

置信区间的宽度由两个因素决定:置信水平和标准误。置信水平越高区间越宽,这是拿精度换把握;标准误越小(样本量大、数据波动小)区间越窄。所以想得到又窄又可靠的区间,只能靠增大样本量。这个权衡在做实验设计时就要考虑:你要多高的置信水平,能接受多宽的区间,反推需要多大样本量。

均值置信区间的公式分两种情况:总体方差已知用正态,未知用 t。以未知为例,区间是 x̄ ± t(α/2, n-1) × s/√n,其中 s 是样本标准差,s/√n 就是标准误。这个公式要能默写,因为它是后面很多内容的基础。比例参数的区间估计在大样本下用正态近似,公式是 p̂ ± z(α/2) × √(p̂(1-p̂)/n),小样本时要用精确方法,这个细节后面问题排查里会提。

4. 假设检验:判断说法站不站得住

4.1 原假设与备择假设怎么设

假设检验的框架是先立一个原假设 H0,通常代表“没有效应”“没有差异”“维持现状”,然后看样本数据是否足够反对它。如果反对得足够强烈,就拒绝 H0,接受备择假设 H1。这里的关键是:H0 和 H1 的地位不对称,检验的结论要么是“拒绝 H0”,要么是“不拒绝 H0”,永远不能说“接受 H0 为真”。因为不拒绝只是说明证据不够,不代表 H0 一定对。

假设怎么设直接影响结论,所以有讲究。一般把你想证明的、或者推翻代价较大的那个说法放在 H0。比如你想证明新工艺比旧工艺好,通常设 H0 为新旧无差异,H1 为新工艺更好,这样只有数据足够强才拒绝 H0,控制住误判的风险。单侧还是双侧也要提前定:你只关心一个方向就用单侧,两个方向都关心就用双侧。这个必须在看数据之前定好,看完数据再改方向是典型的错误做法。

我见过新手常犯的一个错:把 H0 设成“新方法更好”,结果数据不支持就宣称“新方法不好”。这是逻辑错误,不拒绝 H0 只能说明没有足够证据支持新方法更好,不能反过来说它更差。假设检验只能证伪不能证实,这个哲学层面的限制得认。

4.2 p 值:最容易被误读的指标

p 值的定义是:在 H0 为真的前提下,出现当前样本结果或更极端结果的概率。注意它的条件——是在 H0 成立的前提下算的。所以 p 值小,说明“如果 H0 为真,这么极端的结果不太可能出现”,于是我们倾向于怀疑 H0。但 p 值不是 H0 为真的概率,也不是“结果由偶然造成的概率”,这两个误读极其普遍。

举个具体例子帮助理解。假设检验一枚硬币是否公平,抛 10 次出现 9 次正面。H0 是公平(p=0.5),在这个前提下出现 9 次及以上正面的概率大约是 0.021,这就是 p 值。它说明如果硬币公平,这么极端的结果概率很低,所以我们怀疑硬币不公平。但它不告诉你“硬币不公平的概率是 0.021”,那是另一个概念(后验概率),需要贝叶斯框架才能算。

p 值和显著性水平 α 的关系也要理清。α 是你事先定的门槛,通常 0.05,代表你愿意承担的“错误拒绝 H0”的风险上限。p < α 就拒绝 H0。但 α=0.05 不是神圣不可侵犯的,它只是个约定俗成的惯例。p=0.049 和 p=0.051 在实际意义上几乎没有差别,却可能得出相反结论,这就是所谓的“p 值操纵”隐患。我的建议是报告具体 p 值而不是只报“显著/不显著”,让读者自己判断证据强度。

4.3 两类错误与检验功效

假设检验会犯两种错。第一类错误是 H0 为真却拒绝了它,概率就是 α,也叫“弃真”。第二类错误是 H0 为假却没拒绝,概率记作 β,也叫“存伪”。这两类错误此消彼长:在样本量固定时,降低 α 会增大 β,反之亦然。想同时降低两者,只能增大样本量。

检验功效是 1-β,即 H0 为假时正确拒绝它的概率。功效越高,越能发现真实存在的效应。功效受三个因素影响:效应越大功效越高、样本量越大功效越高、α 越大功效越高。做实验设计时通常要求功效至少 0.8,也就是 β 不超过 0.2。这个 0.8 也是惯例,不是硬性规定,但低于它意味着你有较大可能漏掉真实效应。

下面这张表把两类错误和实际情况的关系理清楚,建议记牢,因为它是理解整个检验逻辑的骨架。

H0 为真H0 为假
不拒绝 H0正确(概率 1-α)第二类错误(概率 β)
拒绝 H0第一类错误(概率 α)正确(概率 1-β,即功效)

实操中一个常见问题是样本量不足导致功效低,结果明明有效应却检验不显著,被误判为“没有效果”。这种情况在小型实验里特别多。我的做法是实验前先做功效分析,估算需要多大样本量,而不是做完再看结果。功效分析需要预设效应大小,这个可以基于历史数据或预实验,虽然有点主观,但比事后拍脑袋强。

5. 实操流程与常见问题排查

5.1 一份数据从到手到出结论的完整走法

把前面的内容串起来,实际处理一份数据的流程大致是这样。第一步做描述性统计和可视化,看分布形状、找异常值、了解数据质量。第二步明确你要回答的问题,是估计某个参数还是检验某个说法,据此选方法。第三步检查方法的前提假设,比如正态性、独立性、方差齐性,不满足就得换方法或做变换。第四步计算估计值或检验统计量,给出区间或 p 值。第五步解释结果,注意措辞的严谨性。

这个流程里第三步最容易被跳过,也最容易出问题。比如做 t 检验前得看数据是否近似正态、两组是否独立,做方差分析前得看方差是否齐。前提不满足硬上,结论就不可靠。我一般会先画 Q-Q 图看正态性,用箱线图看方差齐性,这些图比正式的检验更直观,正式检验在小样本下本身也不可靠。

解释结果时的措辞要特别注意。估计要带区间,不能只报点估计;检验要报 p 值和效应大小,不能只说“显著”。统计显著不等于实际重要,样本量一大,微小的差异也能显著。所以报告结果时最好同时给出效应大小和置信区间,让读者判断实际意义。这个习惯我从带新人开始就一直强调,因为它是区分“会算”和“会用”的分水岭。

5.2 常见问题速查表

下面这张表整理了入门阶段最高频的几个问题和处理思路,都是我自己或带的人实际遇到过的。

问题现象可能原因排查与处理
置信区间特别宽样本量小或数据波动大增大样本量,检查异常值,考虑数据变换
检验不显著但感觉有效应功效不足或效应确实小做功效分析,估算所需样本量,报告效应大小
p 值刚好在 0.05 附近证据处于临界,结论不稳报告具体 p 值和区间,不强行下结论
正态性检验不通过数据偏态或有异常值看 Q-Q 图,考虑变换或非参数方法
两组方差差异大方差不齐用 Welch 校正的 t 检验,或非参数方法
比例区间估计出现负值小样本正态近似失效改用精确方法或对参数做变换

5.3 几个踩过才知道的坑

第一个坑是把相关当因果。统计方法能告诉你两个变量有关联,但关联不等于因果,因果需要实验设计或因果推断方法支撑。我早期做分析时吃过这个亏,看到两个指标同涨同跌就下结论说一个导致另一个,后来被追问机制时答不上来。现在我会严格区分“相关”和“因果”的表述。

第二个坑是多重比较不校正。同时做很多次检验时,即使每次 α=0.05,整体犯第一类错误的概率会远高于 5%。比如做 20 次独立检验,至少一次假阳性的概率接近 64%。处理办法是校正 α,比如 Bonferroni 校正把每次的 α 除以检验次数,或者用 FDR 控制。这个在基因数据、A/B 测试多指标场景里特别重要。

第三个坑是忽略样本独立性。很多方法假设样本独立,但实际数据常有聚类结构,比如同一批次的测量、同一个用户的多条记录。独立性不满足时标准误会算错,导致检验结果失真。遇到这种情况要用混合模型或聚类稳健标准误,不能直接套基础方法。这个坑比较隐蔽,往往要等结论出问题才回头发现。

6. 给不同基础读者的上手建议

如果你是完全新手,别一上来就啃公式推导。先把总体、样本、统计量、分布这几个概念用具体例子吃透,然后动手用现成工具算一遍描述性统计和置信区间,建立直觉。工具方面,电子表格就能做基础的描述统计和 t 检验,Python 或 R 更适合批量处理和画图。关键是先跑通一遍完整流程,知道每个数字从哪来、代表什么,再回头补理论。

如果你学过一遍但概念还糊,我建议重点补三块:抽样分布为什么重要、置信区间的正确解释、p 值的定义。这三块是误解重灾区,理清了后面就顺了。方法上可以自己造小数据手动算一遍,比如从一个小总体里反复抽样算均值,看均值的分布怎么形成,比看十遍书都管用。这种“手动模拟”是我认为最有效的补课方式。

如果你要实际用,记住三条:先看图再看数、先查前提再用方法、报告结果带区间和效应大小。这三条能避开大部分低级错误。另外养成记录分析过程的习惯,用了什么方法、什么假设、什么参数,都写清楚,方便复查也方便别人复现。统计分析的可靠性很大程度上取决于过程是否透明,这一点比用多高级的方法都重要。

最后分享一个我自己常用的练习:找一份公开的小数据集,从描述统计一路做到假设检验,把每一步的理由写下来,然后隔一周再回看,看当时的判断还站不站得住。这个习惯帮我揪出过不少理解偏差,也比单纯刷题更接近真实工作场景。数理统计的基础不在于记住多少公式,而在于每个选择背后你能不能说出为什么。

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进