热线电话:13121318867

登录
首页大数据时代Excel中观察组与对照组的卡方检验:从列联表到卡方值计算全流程
Excel中观察组与对照组的卡方检验:从列联表到卡方值计算全流程
2026-10-21
收藏

一、什么时候用卡方检验

在医学、生物、社会学和商业实验中,经常要比较"观察组"和"对照组"两组人群在某个分类指标上有没有差异。比如:

  • 新药组(观察组)有效率 75%,对照组有效率 60%,差异是否显著?
  • 用户A版本按钮点击率 vs B版本按钮点击率,差异是真实效果还是随机波动?
  • 吸烟者 vs 不吸烟者,肺癌发病率是否有差异?

当数据是分类变量(有效/无效、是/否、点击/未点击)时,比较两组比例差异,用的就是卡方检验(Chi-square Test)。它是医学统计、AB实验、问卷分析里最常用的检验方法之一。

二、构建2×2列联表

卡方检验的输入不是原始数据,而是一张列联表。观察组 vs 对照组的经典结构是 2×2 四格表:

有效(事件发生) 无效(事件未发生) 合计
观察组(A) a b a+b
对照组(B) c d c+d
合计 a+c b+d n = a+b+c+d

举个具体例子:某药试验,观察组100人,75人有效;对照组100人,60人有效。四格表就是:

有效 无效 合计
观察组 75 25 100
对照组 60 40 100
合计 135 65 200

三、卡方值的计算原理

3.1 核心公式

卡方值衡量的是:实际观测频数和"两组无差异"假设下的期望频数之间的差距。公式:

其中 O 是观测频数(表里实际数字),E 是期望频数。

期望频数 E 的计算方法:某个格子的 E = 该格所在行的合计 × 所在列的合计 ÷ 总样本量 n。

3.2 以例子逐步计算

第一步:算每个格子的期望频数 E

  • 观察组-有效格:E = 100 × 135 ÷ 200 = 67.5
  • 观察组-无效格:E = 100 × 65 ÷ 200 = 32.5
  • 对照组-有效格:E = 100 × 135 ÷ 200 = 67.5
  • 对照组-无效格:E = 100 × 65 ÷ 200 = 32.5

第二步:代入卡方公式

第三步:和临界值比较

2×2表的自由度 = (行数-1)×(列数-1) = 1。查卡方分布表,自由度1、显著性水平0.05对应的临界值是 3.84。

我们算出来的 χ² ≈ 5.17 > 3.84,所以 p < 0.05,两组差异显著——新药确实比对照组效果好。

3.3 2×2表的简化公式

对于四格表,有一个不用算期望频数的简化公式,直接用 a、b、c、d 四个格子的值算:

代入上面例子:n=200,a=75,b=25,c=60,d=40:

结果完全一致。这个简化公式在手工计算时非常方便。

四、用Excel直接算卡方值

4.1 方法一:CHISQ.TEST 函数(直接出p值)

Excel 里最快捷的方法是用 CHISQ.TEST 函数,它直接返回p值,不需要自己查表。

操作步骤:

  1. 在 Excel 里把观测频数排成 2行×2列 的区域(比如 A1:B2)。
  2. 期望频数不需要手动填——函数内部自动计算。
  3. 任意单元格输入:
=CHISQ.TEST(A1:B2)

等等,CHISQ.TEST 实际上需要两个参数:实际范围和期望范围。更实用的做法是:

=CHISQ.TEST(实际数据区域, 期望数据区域)

完整操作步骤:

  1. 先在 A1:B2 填入观测值:
    75  25
    60  40
  2. 在 D1:E2 填入期望频数(按上文方法手算或用公式算):
    • D1 = =SUM($A$1:$A$2)*SUM(A1:B1)/SUM($A$1:$B$2) → 67.5
    • D2 = =SUM($A$1:$A$2)*SUM(A2:B2)/SUM($A$1:$B$2) → 67.5
    • E1 = =SUM($B$1:$B$2)*SUM(A1:B1)/SUM($A$1:$B$2) → 32.5
    • E2 = =SUM($B$1:$B$2)*SUM(A2:B2)/SUM($A$1:$B$2) → 32.5
  3. 输入:
=CHISQ.TEST(A1:B2, D1:E2)

得到的就是 p 值。上面例子会得到 p ≈ 0.023,小于0.05,差异显著。

4.2 方法二:CHISQ.INV.RT 反查临界值

如果你想知道自己算出的卡方值对应的临界值是多少,用:

=CHISQ.INV.RT(0.05, 1)

其中 0.05 是显著性水平,1 是自由度。结果返回 3.841,和卡方表一致。

4.3 方法三:用简化公式直接算卡方值

如果只想快速得到卡方统计量本身(不通过函数),直接在 Excel 里写:

=(200*(75*40-25*60)^2)/(100*100*135*65)

结果 ≈ 5.17。这就是四格表简化公式的直接套用。

五、结果怎么解读

卡方检验的结果要同时看两个东西:

1. p 值大小(最关键)

  • p < 0.05:两组差异具有统计学意义,观察组和对照组确实不同。
  • p ≥ 0.05:差异不显著,现有数据不足以推翻"两组相同"的假设。

2. 差异方向和实际幅度

显著不代表效果大。比如 p=0.03 显著,但有效率只差 2%,业务意义可能很小。要看具体的有效率差异:本例观察组 75% vs 对照组 60%,绝对差异 15个百分点,相对提升 25%,这个效果才有实际价值。

六、使用卡方检验的前提条件和注意事项

6.1 样本量要求

卡方检验对样本量有要求。经典规则是:所有期望频数 E 都要 ≥ 5。如果有格子 E < 5,或者总样本量小于40,卡方近似就不准了,应该改用Fisher精确检验。

比如某组只有20人,某格子 E=3,这时不能直接用卡方,要用 Fisher。

6.2 样本量过小用连续性修正(Yates修正)

当总样本量在40~60之间、且有期望频数在5左右时,建议对卡方值做Yates连续性修正:

就是在 ad-bc 外面加绝对值,再减去 n/2。修正后的卡方值会偏小,p值会偏大,结论更保守。

6.3 是双侧检验还是单侧检验

卡方检验本身是双侧检验——它只判断"两组是否有差异",不判断"谁高谁低"。如果你事先就预期观察组效果比对照组好(有明确方向),理论上可以用单侧检验,但需要在实验设计阶段就声明。

6.4 观察组对照组的常见误区

  • 混淆相关与因果:卡方显著只说明两个变量有关联,不代表"治疗导致了效果"。观察性研究中要考虑混杂因素。
  • 多次比较问题:如果同时比较多个指标(比如有效率、治愈率、不良反应率都做卡方),会增加一类错误概率,需要做多重比较校正。
  • 率的比较要给绝对数:只给百分比不给样本量是耍流氓——100%有效可能是2/2,这种样本量卡方根本检验不出显著性。

七、Excel完整操作流程总结

把整个流程串一遍,遇到观察组/对照组数据时按这个顺序做:

  1. 整理原始数据:把两组各自的"事件发生数"和"事件未发生数"填成2×2四格表。
  2. 算合计行合计列:检查总样本量,所有格子期望频数是否≥5。
  3. 方法选择:E全部≥5用普通卡方;E有<5用Fisher精确检验;40~60之间用Yates修正。
  4. 算卡方值:用简化公式手算,或用 CHISQ.TEST 直接出p值。
  5. 下结论:p<0.05说差异显著,同时报告两组的具体率差和绝对样本量。
  6. 写报告:规范写法是"观察组有效率75%(75/100),对照组60%(60/100),卡方值5.17,p=0.023,差异有统计学意义"。

八、总结

卡方检验是分类数据两组比较的入门方法,Excel 里用 CHISQ.TEST 一个函数就能出p值,但真正用好它的关键不在计算,而在三件事:四格表建对、期望频数检查到位、结果解读时同时看统计显著性和实际差异幅度。

记住一个核心判断标准:p值告诉你"差异是不是真的",率差告诉你"差异值不值得关心"。两个都要看,才算把卡方检验用对了。

推荐学习书籍 《CDA一级教材》适合CDA一级考生备考,也适合业务及数据分析岗位的从业者提升自我。完整电子版已上线CDA网校,累计已有10万+在读~ !

免费加入阅读:https://edu.cda.cn/goods/show/3151?targetId=5147&preview=0

数据分析师资讯
更多

OK
客服在线
立即咨询
客服在线
立即咨询