ARTICLE

列联表检验

列联表检验 (Contingency Table Test) 列联表检验 (Contingency Table Test) 是\%统计学\%中用于检验两个或多个\%分类变量\% (Categorical Variables) 之间是否存在显著关联性的一组方法的总称。该检验的核心工具是 \%列联表\% (Contingency Table),它通过一个矩阵形式

浏览 31 更新 2025-10-22

列联表检验 (Contingency Table Test)

列联表检验 (Contingency Table Test) 是\%统计学\%中用于检验两个或多个\%分类变量\% (Categorical Variables) 之间是否存在显著关联性的一组方法的总称。该检验的核心工具是 \%列联表\% (Contingency Table),它通过一个矩阵形式的表格来展示各个分类变量的不同水平(类别)的频数分布。

最常见的列联表检验是 \%皮尔逊卡方检验\% (Pearson's Chi-squared Test),特别是其在 \%独立性检验\% (Test of Independence) 中的应用。该检验旨在回答一个核心问题:观测到的数据中,两个分类变量是相互独立的,还是存在某种依赖关系?

核心概念与假设

列联表检验的基础是比较 \%观测频数\% (Observed Frequencies)\%期望频数\% (Expected Frequencies) 之间的差异。

  • 观测频数 (O O ):在样本数据中,每个单元格(即每一种类别组合)内实际观察到的个体数量。
  • 期望频数 (E E ):如果两个变量完全独立(即\%零假设\%成立),我们理论上期望在每个单元格中观察到的个体数量。

该检验的假设叙述如下:

  • 零假设 (H0 H_0 ):两个分类变量是 相互独立的。即一个变量的取值不影响另一个变量的取值分布。
  • 备择假设 (H1 H_1 ):两个分类变量是 不独立的(即存在关联性)。

检验的逻辑在于,如果观测频数与期望频数非常接近,则我们没有理由拒绝零假设,即变量之间可能是独立的。反之,如果两者差异巨大,则说明两个变量之间很可能存在某种关联。

卡方统计量 (Chi-squared Statistic, χ²)

为了量化观测频数与期望频数之间的总体差异,我们计算 \%卡方统计量\% (χ2 \chi^2 )。其计算公式为:

χ2=i=1rj=1c(OijEij)2Eij\chi^2 = \sum_{i=1}^{r} \sum_{j=1}^{c} \frac{(O_{ij} - E_{ij})^2}{E_{ij}}

其中:

  • Oij O_{ij} 是位于第 i i 行、第 j j 列单元格的观测频数。
  • Eij E_{ij} 是位于第 i i 行、第 j j 列单元格的期望频数。
  • r r 是列联表的行数(第一个变量的类别数)。
  • c c 是列联表的列数(第二个变量的类别数)。
  • 求和符号 \sum 表示对所有单元格进行加总。

计算期望频数

在独立性假设下,一个单元格的期望频数可以通过以下公式计算:

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

这个公式的直观理解是:如果变量是独立的,那么某个单元格的频数占总样本量的比例,应该等于该行所占比例与该列所占比例的乘积。

检验的步骤

执行一次典型的卡方独立性检验通常遵循以下步骤:

  1. 建立假设:明确零假设 (H0 H_0 ) 和备择假设 (H1 H_1 )。
  2. 构建列联表:根据样本数据,整理出包含观测频数的列联表,并计算出各行、各列的总计以及总样本量。
  3. 计算期望频数:为表中的每一个单元格计算其期望频数 Eij E_{ij}
  4. 计算χ2 \chi^2 统计量:使用上述公式计算出χ2 \chi^2 的值。
  5. 确定自由度(df):对于一个 r×c r \times c 的列联表,其\%自由度\% (Degrees of Freedom) 为:
df=(r1)×(c1)df = (r-1) \times (c-1)

自由度代表了在给定行和列的总计之后,表中可以自由变化的单元格数量。

  1. 确定\%p值\% (p-value):根据计算出的 χ2 \chi^2 值和自由度 df df ,查找\%卡方分布\% (Chi-squared Distribution) 表或使用统计软件来获得对应的p值。p值表示在零假设为真的情况下,获得当前观察到的或更极端的差异(即更大χ2 \chi^2 值)的概率。
  2. 做出统计决策:将p值与预先设定的\%显著性水平\% α \alpha (Significance Level, 通常为 0.05, 0.01 或 0.10)进行比较。
  • 如果 pα p \le \alpha ,则拒绝零假设。结论是:有统计学上显著的证据表明这两个变量之间存在关联。
  • 如果 p>α p > \alpha ,则不拒绝零假设。结论是:没有足够的证据表明这两个变量之间存在关联。

示例:教学方法与考试通过率

假设一项研究想要探究新的教学方法(新方法 vs. 传统方法)是否与学生的考试通过率(通过 vs. 未通过)有关。研究人员随机抽取了200名学生,得到以下数据:

| 教学方法 | 通过 | 未通过 | 行总计 | | :--- | :--- | :--- | :--- | | 新方法 | 70 | 30 | 100 | | 传统方法| 50 | 50 | 100 | | 列总计 | 120 | 80 | 200 (总样本) |

1. 假设

  • H0 H_0 : 教学方法与考试通过率相互独立。
  • H1 H_1 : 教学方法与考试通过率存在关联。

2. 计算期望频数

  • E新, 通过=(100×120)/200=60 E_{\text{新, 通过}} = (100 \times 120) / 200 = 60
  • E新, 未通过=(100×80)/200=40 E_{\text{新, 未通过}} = (100 \times 80) / 200 = 40
  • E传统, 通过=(100×120)/200=60 E_{\text{传统, 通过}} = (100 \times 120) / 200 = 60
  • E传统, 未通过=(100×80)/200=40 E_{\text{传统, 未通过}} = (100 \times 80) / 200 = 40

3. 计算χ2 \chi^2 统计量

χ2=(7060)260+(3040)240+(5060)260+(5040)240\chi^2 = \frac{(70-60)^2}{60} + \frac{(30-40)^2}{40} + \frac{(50-60)^2}{60} + \frac{(50-40)^2}{40}
χ2=10060+10040+10060+10040\chi^2 = \frac{100}{60} + \frac{100}{40} + \frac{100}{60} + \frac{100}{40}
χ21.67+2.5+1.67+2.5=8.34\chi^2 \approx 1.67 + 2.5 + 1.67 + 2.5 = 8.34

4. 自由度与p值

  • 自由度 df=(21)×(21)=1 df = (2-1) \times (2-1) = 1
  • 查询卡方分布表或使用软件,对于 χ2=8.34 \chi^2 = 8.34 df=1 df=1 的情况,p值约为 0.0039 0.0039

5. 统计决策

  • 假设我们选择显著性水平 α=0.05 \alpha = 0.05
  • 因为 p0.0039<0.05 p \approx 0.0039 < 0.05 ,我们拒绝零假设。
  • 结论:有充分的统计证据表明,教学方法与考试通过率之间存在显著关联。观察数据可知,采用新方法的学生通过率更高。

相关检验方法

除了标准的皮尔逊卡方检验外,列联表分析中还有其他重要的检验方法。\%似然比检验\% (Likelihood Ratio Test, G-test) 是卡方检验的一种替代方法,其统计量 G=2Oijln(Oij/Eij) G = 2 \sum O_{ij} \ln(O_{ij}/E_{ij}) 在大样本下也近似服从卡方分布,在某些情况下比皮尔逊卡方检验更稳健。对于 配对分类数据 (如前后测设计),应使用 \%麦克尼马尔检验\% (McNemar's Test),它专门用于检验配对样本中两个相关分类变量的边际分布是否一致。\% Cochran–Mantel–Haenszel 检验\% 则用于控制第三个分层变量后,检验两个分类变量之间的条件关联性。

应用前提与局限性

为了确保列联表检验结果的有效性,需要满足以下几个前提条件:

  1. 数据类型:变量必须是分类(名义或有序)数据。
  2. 观测独立性:样本中的每个观测值都必须是独立的。例如,一个学生的表现不能影响另一个学生。
  3. 期望频数大小:检验的有效性依赖于足够大的样本量。通常的经验法则是:
  • 对于 r×c r \times c 表,所有单元格的期望频数 Eij E_{ij} 最好都大于等于 5。
  • 一个较为宽松的标准是:至少80\%的单元格期望频数不小于5,并且所有单元格的期望频数不小于1。
  • 当这个条件不满足时,特别是对于2x2的列联表,应考虑使用 \%费舍尔精确检验\% (Fisher's Exact Test),该检验不依赖于大样本假设。

需要注意的是,列联表检验只能判断变量之间是否存在关联,但不能说明关联的 强度因果关系。要衡量关联的强度,需要计算其他指标,如 \%Phi系数\% (ϕ \phi )\%Cramér's V\%