ARTICLE

卡方检验

卡方检验 (Chi-squared Test) 卡方检验 (Chi-squared Test),也写作 ^2 检验,是一种广泛应用于统计学的假设检验方法。它的核心用途是检验分类数据的实际观测频数(Observed Frequencies)与理论或期望频数(Expected Frequencies)之间是否存在显著差异。卡方检验由英国统计学家Karl Pear

浏览 87 更新 2025-10-25

卡方检验 (Chi-squared Test)

卡方检验 (Chi-squared Test),也写作 χ2 \chi^2 检验,是一种广泛应用于统计学假设检验方法。它的核心用途是检验分类数据的实际观测频数(Observed Frequencies)与理论或期望频数(Expected Frequencies)之间是否存在显著差异。卡方检验由英国统计学家Karl Pearson在20世纪初提出,是处理计数数据最基本和最重要的工具之一。

卡方检验主要分为两大类:拟合优度检验 (Goodness-of-Fit Test)独立性检验 (Test of Independence)。尽管应用场景不同,但它们都基于相同的基本逻辑:比较观测值与期望值的差距。

卡方检验的核心逻辑与统计量

卡方检验的中心思想是通过计算一个名为卡方统计量 (χ2 \chi^2 )的数值来量化观测频数与期望频数之间的总差异。其计算公式为:

χ2=i=1k(OiEi)2Ei\chi^2 = \sum_{i=1}^{k} \frac{(O_i - E_i)^2}{E_i}

其中:

  • Oi O_i :第 i i 个类别的 观测频数 (Observed Frequency)。这是从样本中实际收集到的数据。
  • Ei E_i :第 i i 个类别的 期望频数 (Expected Frequency)。这是在零假设H0 H_0 )成立的条件下,我们理论上期望得到的频数。
  • k k :分类的总数。
  • \sum :求和符号,表示对所有类别计算后求总和。

这个公式的直观解释如下:

  1. (OiEi) (O_i - E_i) :计算每个类别观测值与期望值之间的差异。
  2. (OiEi)2 (O_i - E_i)^2 :将差异平方,这使得所有差异都变为正数,并且放大了较大的差异。
  3. (OiEi)2Ei \frac{(O_i - E_i)^2}{E_i} :将平方差用期望频数进行标准化。这是因为,一个绝对差异(如10)在期望频数为100时可能不显著,但在期望频数为20时则非常显著。
  4. \sum :将所有类别经过标准化后的平方差相加,得到一个总的差异度量。

如果观测频数与期望频数非常接近,那么 χ2 \chi^2 统计量的值会很小;反之,如果两者差异巨大,χ2 \chi^2 统计量的值会很大。

卡方分布 (Chi-squared Distribution)

计算出的 χ2 \chi^2 统计量本身并不能直接得出结论。我们需要将其与一个理论概率分布——卡方分布——进行比较,以判断这个差异是否是统计上显著的。

卡方分布具有以下关键特征:

  • 它由一个参数定义:自由度 (degrees of freedom, df df )。自由度的不同决定了卡方分布的具体形态。
  • 分布的值恒为非负,因为它是由平方和构成的。
  • 分布是向右偏斜的(正偏态),但随着自由度的增加,其形状逐渐趋近于正态分布。

在假设检验中,我们会设定一个显著性水平α \alpha ,通常为0.05或0.01),然后根据自由度在卡方分布上找到一个临界值 (Critical Value)。如果计算出的 χ2 \chi^2 统计量大于临界值,我们就有理由拒绝零假设。或者,我们也可以计算出该 χ2 \chi^2 值对应的p-value,如果 p-value 小于 α \alpha ,我们同样拒绝零假设。

卡方检验的主要类型

1. 拟合优度检验 (Goodness-of-Fit Test)

用途:检验单个分类变量的观测频数分布是否与某种理论或期望的分布相拟合。

  • 零假设 (H0 H_0 ):观测频数分布与期望频数分布没有显著差异(即样本来自于该理论分布)。
  • 备择假设 (H1 H_1 ):观测频数分布与期望频数分布存在显著差异。

自由度 (df df )df=k1 df = k - 1 ,其中 k k 是分类的数量。

示例:假设一家公司声称其生产的五种颜色的糖果(红、黄、蓝、绿、棕)的比例是均等的(各20\%)。我们随机抽取了100颗糖果,得到如下观测结果:

| 颜色 | 观测频数 (O) | 期望比例 | 期望频数 (E) | | :--- | :---: | :---: | :---: | | 红 | 25 | 20\% | 20 | | 黄 | 22 | 20\% | 20 | | 蓝 | 15 | 20\% | 20 | | 绿 | 18 | 20\% | 20 | | 棕 | 20 | 20\% | 20 | | 总计| 100 | 100\% | 100 |

期望频数的计算:Ei=总样本数×期望比例=100×0.20=20 E_i = \text{总样本数} \times \text{期望比例} = 100 \times 0.20 = 20

计算 χ2 \chi^2 统计量:

χ2=(2520)220+(2220)220+(1520)220+(1820)220+(2020)220\chi^2 = \frac{(25-20)^2}{20} + \frac{(22-20)^2}{20} + \frac{(15-20)^2}{20} + \frac{(18-20)^2}{20} + \frac{(20-20)^2}{20}
χ2=2520+420+2520+420+020=1.25+0.2+1.25+0.2+0=2.9\chi^2 = \frac{25}{20} + \frac{4}{20} + \frac{25}{20} + \frac{4}{20} + \frac{0}{20} = 1.25 + 0.2 + 1.25 + 0.2 + 0 = 2.9

此处的自由度 df=51=4 df = 5 - 1 = 4 。假设我们选择 α=0.05 \alpha = 0.05 ,查卡方分布表可知,df=4 df=4 时的临界值为 9.488。由于我们计算出的 χ2=2.9<9.488 \chi^2 = 2.9 < 9.488 ,我们无法拒绝零假设。结论是:没有足够的证据表明糖果颜色的分布与公司声称的均等分布有显著差异。

2. 独立性检验 (Test of Independence)

用途:检验两个分类变量之间是否存在关联性,即它们是相互独立的还是相关的(相依的)。

  • 零假设 (H0 H_0 ):两个变量相互独立。
  • 备择假设 (H1 H_1 ):两个变量不独立(即存在关联)。

数据通常以列联表 (Contingency Table) 的形式呈现。

期望频数的计算:对于列联表中的任意一个单元格,其期望频数的计算公式为:

Eij=(第 i 行的总计)×(第 j 列的总计)总样本量E_{ij} = \frac{(\text{第 } i \text{ 行的总计}) \times (\text{第 } j \text{ 列的总计})}{\text{总样本量}}

这个公式的逻辑基础是概率的乘法法则:如果两个事件独立,那么它们同时发生的概率等于它们各自概率的乘积。

自由度 (df df )df=(r1)(c1) df = (r - 1)(c - 1) ,其中 r r 是行数,c c 是列数。

示例:我们想研究“性别”与“是否吸烟”之间是否存在关联。我们调查了200人,数据如下(观测频数):

| | 吸烟 | 不吸烟 | 行总计 | | :--- | :---: | :---: | :---: | | 男性 | 40 | 60 | 100 | | 女性 | 20 | 80 | 100 | | 列总计 | 60| 140| 200 |

现在计算每个单元格的期望频数:

  • E(男性, 吸烟) = (100×60)/200=30 (100 \times 60) / 200 = 30
  • E(男性, 不吸烟) = (100×140)/200=70 (100 \times 140) / 200 = 70
  • E(女性, 吸烟) = (100×60)/200=30 (100 \times 60) / 200 = 30
  • E(女性, 不吸烟) = (100×140)/200=70 (100 \times 140) / 200 = 70

计算 χ2 \chi^2 统计量:

χ2=(4030)230+(6070)270+(2030)230+(8070)270\chi^2 = \frac{(40-30)^2}{30} + \frac{(60-70)^2}{70} + \frac{(20-30)^2}{30} + \frac{(80-70)^2}{70}
χ23.33+1.43+3.33+1.43=9.52\chi^2 \approx 3.33 + 1.43 + 3.33 + 1.43 = 9.52

此处的自由度 df=(21)(21)=1 df = (2-1)(2-1) = 1 。假设 α=0.05 \alpha = 0.05 ,查表得 df=1 df=1 时的临界值为 3.841。由于我们计算出的 χ2=9.52>3.841 \chi^2 = 9.52 > 3.841 ,我们拒绝零假设。结论是:有充分的统计证据表明,性别与是否吸烟之间存在显著的关联。

3. 同质性检验 (Test of Homogeneity)

同质性检验是卡方检验的另一种重要形式,其数学过程与独立性检验完全相同,但研究问题有所不同。独立性检验关注的是两个变量在同一个总体中是否相互独立;而同质性检验关注的是不同总体(或不同组别)中,同一个分类变量的分布是否相同。例如,研究者可能想比较三个不同城市的居民对某项政策的支持率分布是否一致,此时使用同质性检验。在计算上,两种检验使用相同的公式和自由度,区别仅在于抽样方式和研究问题的表述。

效应量 (Effect Size)

当卡方检验的结果显著时,研究者往往还需要了解关联的强度,即效应量。对于卡方检验,常用的效应量指标包括:

  • Cramér's V:适用于独立性检验,取值范围为0到1,值越大表示关联越强。其计算公式为 V=χ2n×(min(k,r)1) V = \sqrt{\frac{\chi^2}{n \times (\min(k, r) - 1)}} ,其中 n n 为总样本量,k k 为列数,r r 为行数。
  • Phi系数:适用于2x2列联表,计算公式为 ϕ=χ2n \phi = \sqrt{\frac{\chi^2}{n}}
  • 列联系数 (Contingency Coefficient):也是基于卡方统计量的关联度量。

效应量的引入使得研究者不仅能判断关联是否存在(统计显著性),还能衡量关联的实际重要性(实际显著性)。

应用领域与历史

卡方检验的起源可以追溯到1900年,当时Karl Pearson在《Philosophical Magazine》上发表了奠基性论文,首次提出了卡方统计量作为拟合优度的度量。这一方法后来由Ronald Fisher等人进一步发展,成为现代统计推断的基石之一。

卡方检验的应用横跨多个学科:

  • 生物学与医学:在临床试验中比较治疗组与对照组的疗效差异;在遗传学中检验孟德尔遗传定律的分离比是否符合理论预期。
  • 社会科学:调查研究中分析性别、教育水平、收入等分类变量之间的关联。
  • 市场研究:分析消费者偏好与人口统计特征之间的关系。
  • 语言学:使用卡方检验分析文本中词频分布的差异。

使用条件与注意事项

  1. 数据类型:卡方检验只适用于频数或计数形式的分类数据,不适用于百分比或连续变量。
  2. 样本独立性:每次观测必须是独立的。例如,在列联表中,不能对同一个人重复测量。
  3. 期望频数的大小:卡方检验的一个重要假设是期望频数不能过小。普遍接受的准则是:
  • 对于所有单元格,期望频数 Ei E_i 都应大于1。
  • 至少80\%的单元格的期望频数 Ei E_i 应大于等于5。
  • 当自由度 df=1 df=1 时(即2x2列联表),建议所有期望频数都大于5。
  • 若不满足此条件,卡方分布对 χ2 \chi^2 统计量的近似效果会变差。此时可以考虑使用耶茨连续性校正 (Yates's correction for continuity),或者对于2x2表格,使用Fisher's exact test
  1. 关联不等于因果:独立性检验如果得出变量相关的结论,仅能说明它们之间存在统计上的关联,不能直接推断出因果关系