Lazy loaded image卡方检验(Chi-squared Test)

type
status
date
slug
summary
tags
category
icon
password
comment

卡方检验的三种类型

1️⃣ 独立性检验(Test of Independence)

目的

  • 判断两个分类变量是否相互独立,或者是否存在统计学关联。
  • 常用于调查问卷、病例对照研究等。

假设

  • 零假设 H0: 两个变量相互独立,没有统计学关联。
  • 备择假设 H1: 两个变量不独立,存在统计学关联。

示例

使用企鹅数据集,检验企鹅的物种 (species) 和岛屿 (island) 是否独立:
结果解释:
  • 如果 p 值很小(< 0.05),拒绝 H0 → 物种分布和岛屿有关联。

2️⃣ 同质性检验(Test of Homogeneity)

目的

  • 判断两个或多个总体在某个分类变量上的分布是否相同。
  • 常用于不同地区、不同处理组之间比例比较。

假设

  • 零假设 H0: 所有总体的分类比例相同(同质)。
  • 备择假设 H1: 至少有一个总体的分类比例不同。

示例

假设我们有两家商店 (Store A, Store B) 的顾客购买三类饮料 (Coffee, Tea, Juice) 的数量:
结果解释:
  • p 值 < 0.05 → 两家商店的饮料购买比例不同(不具同质性)。

3️⃣ 拟合优度检验(Goodness-of-Fit Test)

目的

  • 检验一个分类变量的观测频率是否符合理论预期分布。
  • 常用于基因型分布(孟德尔遗传定律)、骰子公平性等问题。

假设

  • 零假设 H0: 观测分布符合理论期望分布。
  • 备择假设 H1: 观测分布与理论期望分布不一致。

示例

掷骰子 60 次,得到的频率为:
结果解释:
  • p 值 > 0.05 → 无法拒绝 H0,骰子可以认为是公平的。

🔑 区别

  • 独立性检验:一个总体,检查两个变量是否独立。
  • 同质性检验:多个总体,检查一个变量的比例是否相同。
  • 拟合优度检验:单个分类变量与理论分布的拟合程度。

2. 检验统计量(Chi-squared Statistic)

卡方统计量公式:
期望频数计算:
期望频数基于零假设“变量独立”推导而来:
  • 行合计 i:第 i 行所有观测频数的总和
  • 列合计 j:第 j 列所有观测频数的总和
  • 总样本量:列联表中所有观测频数的总和

3. 自由度

卡方统计量的自由度计算为:
自由度用于查卡方分布表或计算 p 值。

4. 显著性判断

  • 根据自由度,查卡方分布表,或使用软件计算 p 值。
  • p < α → 拒绝 H0,认为变量存在统计学关联。

5. 卡方检验是近似检验

卡方检验的核心思想是:通过卡方统计量衡量观测频数与期望频数之间的偏离,并将其与理论卡方分布(χ² distribution)进行比较,从而近似计算 p 值。

渐近近似(Asymptotic Approximation)

  • 卡方统计量在零假设成立且样本量足够大时,渐近服从卡方分布。
  • 这种结果来自于中心极限定理:当观测频数足够大时,频率的分布可以用正态分布近似,进一步推导出卡方分布。
  • 因此,卡方检验并不是精确的排列检验,而是依赖数学近似。

渐近近似 vs 排列检验

  • 假设我们有一个 2×2 列联表,样本量只有 10:
    • 排列检验(Exact)
      • 枚举所有可能的 2×2 表格填充方式
      • 精确计算每种排列的概率
      • p 值为观测结果或更极端情况的概率总和
    • 卡方检验(Approximate)
      • 直接用 χ² 统计量计算
      • 用卡方分布近似估算 p 值
      • 不枚举所有排列 → 快速,但可能与精确值略有偏差
  • 样本量变为 1000:
    • 枚举排列不可行(计算量爆炸)
    • 卡方近似变得非常准确,几乎与精确检验一致

优点

  • 速度非常快:
    • 计算卡方统计量只需简单的代数运算
    • 查表或使用软件即可快速得到 p 值
  • 特别适合样本量大、期望频数较高的情况。

局限性

  • 当样本量较小或某些单元格期望频数低于 5 时:
    • 近似不再准确
    • 卡方检验可能给出不可靠的 p 值
  • 此时需要使用其他更稳健的方法(例如精确检验),但卡方检验本身依然是基于近似的快速方法。

6. 近似检验与 I 型错误率

前面提到,卡方检验是近似检验,它通过渐近分布来估计 p 值。当我们设定显著性水平 α=0.05 时,理论上希望 I 型错误率(错误地拒绝零假设的概率)也接近 5%。
然而,由于近似误差的存在,实际的 I 型错误率可能偏离设定值。如果样本量太小或者表格过于稀疏,这种偏差可能会很大,导致检验结果不可靠。

样本量要求与经验法则

  • Cochran (1954) 提出了一条广泛使用的经验规则:
    • 所有单元格的期望频数
      • 不超过 20% 的单元格期望频数低于 5
    • 满足这个条件时,卡方分布的近似足够准确,I 型错误率接近设定值。

    为什么低期望频数会影响结果?

    • 卡方统计量的推导依赖于中心极限定理,需要足够的样本量使得每个单元格频数接近正态分布。
    • 如果某些单元格太小(尤其 < 5):
      • 观测频数波动较大
      • 近似分布偏离理论卡方分布
      • 可能导致 p 值不准确(通常过度拒绝 H0)

    实际建议

    • 在构建列联表时,检查每个单元格的期望频数
    • 若不满足 Cochran 条件 (Cochran’s Rule):
      • 收集更多数据(往往不现实)
      • 合并稀疏类别以增加频数
      • 使用 Fisher 精确检验 (Fisher’s Exact Test)蒙特卡洛模拟卡方检验 (Monte Carlo Simulated Chi-squared Test)chisq.test(..., simulate.p.value = TRUE)),这部分会在后文详细展开讨论

    7. 稀疏数据处理策略:合并单元格 (Handling Sparse Data: Cell Merging)

    7.1 合并单元格的思路

    • 通过合并低频类别,减少列联表的维度,增加每个单元格的期望频数,使其满足 Cochran 条件。
    • 通常将极少数样本的分类合并为“其他 (Other)”组,或将相似的类别合并为更大的组别。

    7.2 合并的原则

    • 合并应有统计或业务上的合理性(例如类别性质相近)。
    • 合并后仍应保留主要研究假设的可解释性。
    • 避免过度合并导致信息丢失。

    7.3 示例:合并稀疏类别

    假设我们设计了一份调查问卷,统计不同年龄段的人群对饮料类型(Coffee、Tea、Juice)的偏好:
    • 年龄段分为:18–25 岁、26–35 岁、36–45 岁、46 岁以上
    • 问卷结果显示:
      • 年轻人(18–35 岁)参与人数较多
      • 高龄组(36–45 岁、46+)参与人数极少
    当我们用这些数据构建列联表时,部分单元格(尤其是高龄组的 Tea、Juice)观测频数为 0 或接近 0,期望频数明显低于 5,违反 Cochran 条件,从而影响卡方检验结果的准确性。

    ✅ 小结

    • 合并前:高龄组的部分饮料选择观测频数小于 5,违反 Cochran 条件
    • 合并后:期望频数显著提高,满足卡方检验要求
    • 通过合理合并稀疏类别,可以避免检验失真,同时保留主要研究信息

    8. 稀疏数据处理策略:Fisher 精确检验 (Fisher’s Exact Test)

    8.1 背景示例

    一项小规模临床试验中,研究药物是否能降低不良反应发生率。共 24 名受试者,其中药物组几乎没有不良反应,对照组有部分病例。构建的 2×2 列联表中,部分单元格观测频数低于 5,违反 Cochran 条件。

    8.2 精确检验的原理

    • Fisher 精确检验不依赖渐近分布
    • 它基于所有可能的表格排列情况,精确计算在零假设成立时出现观测结果或更极端结果的概率
    • 非常适用于小样本、稀疏数据,尤其是 2×2 表格

    8.3 在 R 中实现


    8.4 结果解释

    • 由于样本量小,卡方检验使用渐近近似计算的 p 值可能失真
    • Fisher 检验通过枚举所有可能结果组合,计算精确概率
    • 在小样本情况下,Fisher 检验的 p 值更准确,也能避免假阳性或假阴性

    8.5 小节

    那么何时使用 Fisher 精确检验?
    1. 任意单元格期望频数 < 1 → 必须使用 Fisher。
    1. 超过 20% 的单元格期望频数 < 5 → 强烈建议使用 Fisher。
    1. 整体样本量小(如 < 30) → Fisher 更可靠。
    1. 2×2 表格 → Fisher 是首选方法。
    1. 更大表格 → 可考虑蒙特卡洛模拟 (chisq.test(..., simulate.p.value = TRUE))。

    9. 稀疏数据处理策略:蒙特卡洛模拟卡方检验 (Monte Carlo Simulated Chi-squared Test)

    当列联表规模较大(>2×2),且存在多个低频单元格时,Fisher 精确检验虽然精确,但计算成本极高甚至无法实现。这时可以使用 蒙特卡洛模拟卡方检验,通过随机化方法估算 p 值。

    9.1 背景示例

    设想我们有一个流行病学调查,统计 4 种不同治疗方案与 3 种疾病结局之间的关联:
    • 表格为 4×3,总样本量不大
    • 部分单元格观测频数 < 5
    • Fisher 精确检验在高维表格下计算复杂度高,不适用

    9.2 原理

    • 通过大量随机打乱(Monte Carlo 重排)样本标签
    • 模拟在零假设下的卡方统计量分布
    • 根据观测统计量在该分布中的位置,估算 p 值
    • 是 Fisher 精确检验的近似方法,但计算效率更高,适合大维度表格

    9.3 在 R 中实现


    9.4 结果解释

    • 普通卡方检验基于渐近分布,低频单元格导致 p 值可能失真
    • 蒙特卡洛检验通过随机重排近似精确概率
    • 模拟次数 B 越大,结果越接近 Fisher 精确值
    • 为什么常用 B = 9999 而不是直接用 10000
      • 当使用蒙特卡洛模拟估算 p 值时,结果是:
      • 如果设置 B = 10000,那么 p 常常是一个 整百分比(例如 500/10000 = 0.05),在临界值(如 0.05 显著性水平)附近容易造成判断困难:
        • p 值恰好等于 0.05 → 不好判断是否“< α”
      • 使用 B = 9999
        • 避免分母是整万数
        • p 值不容易正好落在 0.05
        • 提供更平滑的估计和更好的区分度
      • 适合:
        • 高维列联表
        • 存在多个低频单元格
        • Fisher 精确检验计算量过大

      10. 卡方检验的类别和扩展 (Types and Variants of Chi-squared Tests)

      在前面的章节中,我们已经多次使用卡方检验来处理不同的统计问题。实际上,“卡方检验”并不是单一方法,而是一个统计检验家族,可以根据 应用场景、统计量定义、p 值计算方式、连续性修正、扩展变种 等多个维度来分类。

      10.1 按应用场景分类 (By Application)

      这是最常见的分类方法,根据研究问题的不同,卡方检验可以分为:
      1. 拟合优度检验 (Goodness-of-Fit Test)
      1. 独立性检验 (Test of Independence)
      1. 同质性检验 (Test of Homogeneity)

      10.2 按统计量定义分类 (By Test Statistic)

      在卡方检验中,核心是计算一个检验统计量 (Test Statistic),衡量观测频数与期望频数的偏离程度。常见的统计量主要有两类:

      1️⃣ Pearson 卡方检验 (Pearson’s Chi-squared Test)

      背景

      • 由卡尔·皮尔逊 (Karl Pearson) 于 1900 年提出,是最经典、最常用的卡方检验方法。
      • 广泛应用于拟合优度检验、独立性检验、同质性检验。

      统计量公式

      原理

      • 基于中心极限定理,假设在零假设下,统计量渐近服从卡方分布。
      • 通过计算观测值与期望值的平方差并按期望值标准化,衡量偏离程度。

      特点

      • 适用于大多数分类数据分析。
      • 样本量较小时近似精度下降(违反 Cochran 条件)。
      • 在大样本情况下效果非常好。

      R 示例


      2️⃣ 似然比卡方检验 (Likelihood Ratio Chi-squared Test)

      背景

      • 基于最大似然估计 (Maximum Likelihood Estimation, MLE) 和似然比原理。
      • 在统计建模(如对数线性模型、广义线性模型)中常用。

      统计量公式

      原理

      • 比较:
        • 观测数据的似然值:L(O)
        • 零假设下期望数据的似然值:L(E)
      • 似然比检验统计量:
        • 在零假设下,渐近服从卡方分布。

        特点

        • 更接近对数似然原理,在小样本时更稳健。
        • 与 Pearson 卡方在大样本下几乎相同(统计功效接近)。
        • 更适合建模框架(如对数线性模型、泊松回归)。

        R 示例


        🔑 对比总结

        特点
        Pearson χ2
        Likelihood Ratio G^2
        统计原理
        偏差平方和
        似然比 (Log-likelihood ratio)
        渐近分布
        卡方分布
        卡方分布
        小样本表现
        精度较低
        更稳健
        大样本表现
        与 G^2 接近
        与 Pearson 接近
        典型应用
        经典卡方检验、独立性检验
        对数线性模型、信息论分

        10.3 按 p 值计算方式分类 (By p-value Calculation)

        在卡方检验中,p 值的计算方法取决于样本量大小和表格稀疏程度。主要有三种方式:

        1️⃣ 渐近 p 值 (Asymptotic p-value)

        背景

        • 传统卡方检验使用渐近理论(asymptotic theory):
          • 在零假设成立且样本量足够大时,Pearson 卡方统计量 χ2\chi^2 渐近服从卡方分布。
        • 大多数统计软件默认使用此方法。

        原理

        • 其中 df=(r−1)(c−1) 为自由度。

        特点

        • 计算快速,无需重采样或排列。
        • 当期望频数较低(< 5)时,渐近近似可能不准确。

        R 示例


        2️⃣ 精确 p 值 (Exact p-value)

        背景

        • 当表格稀疏或样本量非常小时,渐近近似不再可靠。
        • 精确 p 值通过枚举或排列计算在零假设下观测结果或更极端结果的概率。

        原理

        • 对于 2×2 表格,常用 Fisher 精确检验
          • 基于超几何分布计算精确概率。
        • 对于更高维表格,可以用全排列方法计算,但计算量极大。

        特点

        • 小样本下准确无偏。
        • 计算成本高,维度大时不可行。

        R 示例


        3️⃣ 蒙特卡洛模拟 p 值 (Monte Carlo Simulated p-value)

        背景

        • 当表格较大且存在稀疏单元格时:
          • Fisher 精确检验不可行(计算量大)
          • 渐近 p 值不可靠
        • 蒙特卡洛模拟是折中方案。

        原理

        • 通过大量随机重排(permutation)观测频数,模拟零假设下卡方统计量的分布。
        • 根据模拟结果估算 p 值。

        特点

        • 精度取决于模拟次数 BB,通常取 9999。
        • 适合高维表格和稀疏数据。
        • 是 Fisher 精确检验的近似替代。

        R 示例


        🔑 对比总结

        方法
        原理
        适用场景
        计算量
        渐近 p 值 (Asymptotic)
        理论卡方分布
        大样本、期望频数高
        精确 p 值 (Exact)
        全排列、超几何分布
        小样本、稀疏表格
        蒙特卡洛模拟 (Monte Carlo)
        随机重排模拟
        多维稀疏表格
        中等

        10.4 按连续性修正分类 (Continuity Correction)

        在卡方检验中,我们使用的统计量是基于连续分布(卡方分布)推导的,而观测数据是离散计数。当表格较小(尤其是 2×2 表格)或样本量较低时,直接使用连续近似可能会高估偏离程度,从而增加 I 型错误率。为了解决这个问题,提出了 连续性修正 (Continuity Correction)

        1️⃣ Yates 连续性修正 (Yates’ continuity correction)

        背景

        • Frank Yates 于 1934 年提出
        • 专门用于 2×2 列联表中的 Pearson 卡方检验
        • 在计算每个单元格的偏离度时,引入了 0.5 的修正量

        统计量公式


        2️⃣ 原理与作用

        • 通过减去 0.5,使统计量更保守
        • 降低离散数据在连续分布近似下的偏差
        • 尤其在小样本、低频单元格的情况下有效

        3️⃣ 缺点

        • 修正会降低检验功效(Power):
          • 减少拒绝零假设的概率
          • 在样本量较大时,反而不需要该修正
        • 一些现代统计分析更倾向于:
          • 使用 Fisher 精确检验
          • 或直接关闭连续性修正

        4️⃣ R 中的使用

        • chisq.test() 中,2×2 表格会默认启用 Yates 修正
        • 可通过 correct = FALSE 关闭:

        🔑 小结

        • 连续性修正专用于 2×2 表格
        • 适用于小样本、低频单元格,减少 I 型错误
        • 大样本时建议关闭,以避免检验功效下降
        • 替代方法:直接使用 Fisher 精确检验

        10.5 卡方检验的扩展和变种 (Extensions)

        卡方检验家族中还包括一些专门针对特定研究设计的扩展方法:

        1️⃣ McNemar 检验 (McNemar’s Test)

        背景

        • 由 Quinn McNemar 于 1947 年提出
        • 用于配对样本的 2×2 表格,检验前后状态是否有显著变化
        • 例如:治疗前后同一批病人的阳性率变化

        统计量公式

        • b:前阳性后阴性人数
        • c:前阴性后阳性人数
        • 校正项 (−1) 用于小样本连续性修正

        R 示例

        2️⃣ Cochran’s Q 检验 (Cochran’s Q Test)


        背景

        • McNemar 检验的扩展版本
        • 用于三组及以上相关样本的二分类变量
        • 常用于医学研究,分析不同时间点或不同条件下的配对数据

        原理

        • 类似于重复测量的卡方检验
        • 基于二项式分布的统计量,检测组间差异

        R 示例


        3️⃣ Mantel-Haenszel 卡方检验 (Mantel-Haenszel Chi-squared Test)

        背景

        • 用于分层数据下的总体关联性检验
        • 常见于流行病学研究,例如多中心临床试验,分析分层后的治疗与结局之间的关联

        原理

        • 对每一层(stratum)计算 2×2 卡方检验
        • 加权合并各层结果,得到总体关联的卡方统计量
        • 可以计算合并后的优势比 (Odds Ratio)

        R 示例


        4️⃣ 趋势检验 (Chi-squared Test for Trend)

        背景

        • 当分类变量是有序类别(ordinal)时,仅使用普通卡方检验可能丢失信息
        • 趋势检验通过线性对比,检测类别与结果之间的单调趋势

        原理

        • 也称 Mantel Test for Trend
        • 检验统计量服从卡方分布,自由度为 1
        • 功效通常高于普通独立性检验

        R 示例


        🔑 小结

        • 卡方检验是一个统计家族,包含适用于不同设计和数据结构的方法:
          • McNemar:配对 2×2 表格
          • Cochran’s Q:多组配对二分类数据
          • Mantel-Haenszel:分层分析
          • 趋势检验:有序分类变量的趋势检测
        • 在实际分析中,根据研究设计和变量特征选择合适的扩展方法。
         
        Prev
        置信区间 (Confidence Intervals)
        Next
        统计功效(Power)与样本量(Sample Size)
        Loading...
        Catalog
        Article List
        Evan の Logbook
        ✨ Updates
        🎨 Style Guide
        🧠 Creative Resources
        🗒️ Mind Notes
        🧭 Knowbase
        📘 SOPs
        🩺 Medical Research
        🛠️ Tech Chronicles
        💰 Fortune Blueprint
        📈 R Visionary
        📊 Statistics
        🖼️ BioVis