目录
-
方差分析 简介
- 什么是方差分析?
- ANOVA 的核心思想
- ANOVA 的前提假设
- ANOVA 的类型简介
-
第一部分:单因素方差分析
- 案例场景
- 操作步骤
- 步骤1:数据准备
- 步骤2:启动分析
- 步骤3:设置变量
- 步骤4:选择事后检验
- 步骤5:设置选项(可选)
- 步骤6:运行并查看结果
- 结果解读
- 表1:描述性统计
- 表2:方差齐性检验
- 表3:ANOVA 表(核心)
- 表4:事后检验结果
-
第二部分:多因素方差分析
- 案例场景
- 操作步骤
- 步骤1:数据准备
- 步骤2:启动分析
- 步骤3:设置变量
- 步骤4:设置模型和对比
- 步骤5:设置事后检验
- 步骤6:设置绘图(推荐)
- 步骤7:运行并查看结果
- 结果解读
- 表1:主体间效应检验
- 表2:交互作用(关键)
- 表3:简单效应分析(后续分析)
-
第三部分:重复测量方差分析
- 案例场景
- 数据准备的特殊性
- 操作步骤
- 步骤1:数据准备
- 步骤2:定义主体内因子
- 步骤3:设置变量
- 步骤4:设置选项
- 步骤5:运行并查看结果
- 结果解读
- 表1:球形度检验
- 表2:重复测量方差分析表
-
总结与常见问题
方差分析 简介
什么是方差分析?
方差分析是一种用于比较三个或以上组别均值是否存在显著差异的统计方法,如果你只有两组数据,用独立样本 t 检验即可,但组别一多,进行多次 t 检验会增加犯第一类错误(误判有差异)的概率,而 ANOVA 可以一次性解决这个问题。
ANOVA 的核心思想
ANOVA 的核心思想是变异分解,它将所有观测数据的总变异分解为两部分:
- 组间变异:由不同组别(自变量)造成的差异,如果自变量对因变量有影响,那么组间变异会比较大。
- 组内变异:由随机误差(个体差异、测量误差等)造成的差异,这部分是不可避免的“噪音”。
通过计算 F 统计量 来判断:
F = 组间变异 / 组内变异
- F 值很大,说明组间变异远大于组内变异,即不同组别的均值很可能存在显著差异。
- F 值接近 1,说明组间变异和组内变异差不多,即不同组别的均值可能没有显著差异。
ANOVA 的前提假设
进行 ANOVA 分析,数据需要满足以下三个基本假设:
- 独立性:各组样本相互独立,不同被试的数据不能相互影响。
- 正态性:每一组的数据都应近似服从正态分布,可以通过 Shapiro-Wilk 检验或观察直方图/Q-Q 图来判断。
- 方差齐性:各组的方差(离散程度)应大致相等,这是最重要的假设之一,SPSS 会自动进行 Levene's 检验。
注意:如果样本量较大(如每组 > 30),数据对正态性的要求会放宽,如果方差不齐,可以使用 Welch's ANOVA 或在事后检验中选择不假定方差齐性的方法。
ANOVA 的类型简介
- 单因素方差分析:只有一个自变量(如教学方法),该自变量有三个或以上水平(如方法A、B、C)。
- 多因素方差分析:有两个或以上自变量(如教学方法 + 性别),可以分析每个自变量的主效应,以及它们之间的交互作用。
- 重复测量方差分析:同一组被试在不同条件下(如不同时间点、不同药物剂量)被重复测量,比较的是同一批人在不同处理下的差异。
第一部分:单因素方差分析
案例场景
一位研究者想比较三种不同的教学方法(A、B、C)对学生期末成绩的影响,他将学生随机分到三个教学组,一学期后记录了他们的成绩,现在想检验这三种方法的教学效果是否存在显著差异。
- 自变量:教学方法(三个水平:A, B, C)
- 因变量:期末成绩(连续变量)
操作步骤
步骤1:数据准备
在 SPSS 中,数据需要按照“长格式”排列,即每一行代表一个被试,每一列代表一个变量。 你需要两列数据:
method:教学方法,可以是数字(1=A, 2=B, 3=C)或文本(A, B, C)。score:期末成绩。
你的数据看起来会是这样:
| method | score |
|---|---|
| 1 | 85 |
| 1 | 88 |
| 1 | 90 |
| 2 | 78 |
| 2 | 80 |
| 2 | 82 |
| 3 | 92 |
| 3 | 95 |
| 3 | 98 |
步骤2:启动分析
点击顶部菜单栏:分析 -> 比较均值 -> 单因素 ANOVA...

步骤3:设置变量
在弹出的对话框中:
- 将 因变量列表 框中的
score选入右侧的 因变量 框。 - 将 因子 框中的
method选入右侧的 因子 框。

步骤4:选择事后检验
点击 事后检验... 按钮,因为你已经知道有超过两组,ANOVA 的 F 检验只能告诉你“至少有一组和其他组不同”,但具体是哪几组不同,需要通过事后检验来判断。
- 勾选 LSD:最常用,但比较严格,适用于所有两两比较。
- 勾选 Tukey:最常用,控制了整体第一类错误率,适用于所有组别数相等或不相等的情况。推荐新手首选 Tukey。
- 勾选 Bonferroni:非常严格,适用于探索性研究或需要严格控制第一类错误的情况。
点击 继续。

步骤5:设置选项(可选)
点击 选项... 按钮,可以获取一些有用的辅助信息。
- 勾选 描述性:输出各组均值、标准差等描述性统计。
- 勾选 方差同质性检验:检验方差齐性假设(非常重要!)。
- 勾选 均值图:绘制各组均值的折线图,直观展示差异。
点击 继续,然后点击 确定 运行分析。
步骤6:运行并查看结果
SPSS 会输出一个结果查看器窗口,里面包含多个表格。
结果解读
表1:描述性统计
这个表提供了各组的基本信息,让你对数据有一个初步了解。
| 方法 | N | 均值 | 标准差 | 标准误 |
|---|---|---|---|---|
| A | 3 | 67 | 52 | 45 |
| B | 3 | 00 | 00 | 15 |
| C | 3 | 00 | 00 | 73 |
| 总数 | 9 | 44 | 85 | 28 |
- 解读:从均值看,方法C的得分最高(95),方法B最低(80),这只是描述,我们还需要看下面的统计检验。
表2:方差齐性检验
这个表检验的是 ANOVA 的重要前提——方差齐性。
| Levene 统计量 | df1 | df2 | 显著性 |
|---|---|---|---|
| .500 | 2 | 6 | .625 |
- 解读:我们关注的是 显著性 这一列。显著性 > 0.05(如本例中的 0.625),则说明方差齐性假设成立,可以使用标准的 ANOVA 结果,如果显著性 < 0.05,则方差不齐,结果可能不可靠。
表3:ANOVA 表(核心)
这是 ANOVA 的核心结果,判断各组均值整体上是否存在差异。
| 平方和 | df | 均方 | F | 显著性 | |
|---|---|---|---|---|---|
| 组间 | 000 | 2 | 000 | 200 | .000 |
| 组内 | 000 | 6 | 000 | ||
| 总数 | 000 | 8 |
- 解读:
- 组间:代表不同教学方法造成的变异。
- 组内:代表随机误差造成的变异。
- F:F 统计量的值,这里是 36.200。
- 显著性:p 值,这里是 .000(表示 p < 0.001)。
- 因为 p < 0.05,所以我们拒绝原假设,认为至少有一种教学方法的效果与其他方法有显著差异,ANOVA 结果显著。
表4:事后检验结果
因为 ANOVA 结果显著,我们需要看这个表来确定具体是哪些组之间存在差异,这里我们以 Tukey 检验为例。
| (I) 方法 | (J) 方法 | 均值差 (I-J) | 标准误 | 显著性 | 95% 置信区间 |
|---|---|---|---|---|---|
| A | B | 67 | 83 | .013 | [1.32, 14.02] |
| C | -7.33 | 83 | .017 | [-13.68, -.98] | |
| B | A | -7.67 | 83 | .013 | [-14.02, -1.32] |
| C | -15.00 | 83 | .000 | [-22.35, -7.65] | |
| C | A | 33 | 83 | .017 | [.98, 13.68] |
| B | 00 | 83 | .000 | [7.65, 22.35] |
- 解读:
- 均值差:比较组 I 和组 J 的均值差异,正数表示 I 组均值大于 J 组。
- 显著性:p < 0.05,说明这两组之间存在显著差异。
- A vs B: p = .013 < 0.05,差异显著,A组成绩高于B组。
- A vs C: p = .017 < 0.05,差异显著,A组成绩低于C组。
- B vs C: p = .000 < 0.05,差异显著,B组成绩远低于C组。
- 最终结论:三种教学方法的效果均不相同,其中方法C效果最好,方法B效果最差。
第二部分:多因素方差分析
案例场景
研究者不仅关心教学方法,还想知道性别是否会影响成绩,这是一个2(教学方法:A, B, C) x 2(性别:男, 女)的设计。
- 自变量1(因子A):教学方法(3个水平)
- 自变量2(因子B):性别(2个水平)
- 因变量:期末成绩
操作步骤
步骤1:数据准备
数据格式仍然是长格式,需要三列:
method:教学方法 (1, 2, 3)gender:性别 (1=男, 2=女)score:成绩
步骤2:启动分析
点击:分析 -> 一般线性模型 -> 单变量...
步骤3:设置变量
在弹出的对话框中:
- 将
score选入 因变量 框。 - 将
method和gender选入 固定因子 框。

步骤4:设置模型和对比
- 模型:通常我们只关心主效应和交互作用,默认选择全因子即可,然后点击
继续。 - 对比:可以设置因子各水平的比较方式,通常保持默认
无。
步骤5:设置事后检验
点击 事后检验... 按钮。
- 将 因子 框中的
method选入 事后检验检验 框(因为gender只有两个水平,不需要事后检验)。 - 选择
Tukey检验。 - 点击
继续。
步骤6:设置绘图(推荐)
点击 绘图... 按钮,可以直观地展示交互作用。
- 将
method选入 水平轴 框。 - 将
gender选入 分离线 框。 - 点击
添加。 - 点击
继续。

步骤7:运行并查看结果
点击 确定 运行分析。
结果解读
表1:主体间效应检验
这是最重要的表格,包含主效应和交互作用的检验结果。
| 源 | III 类平方和 | df | 均方 | F | 显著性 | 偏 Eta 方 |
|---|---|---|---|---|---|---|
| 校正模型 | 000a | 5 | 400 | 100 | .000 | .926 |
| 截距 | 000 | 1 | 000 | 000 | .000 | .998 |
| method | 000 | 2 | 000 | 250 | .000 | .897 |
| gender | 000 | 1 | 000 | 000 | .000 | .833 |
| method * gender | 000 | 2 | .000 | .000 | 000 | .000 |
| 误差 | 000 | 6 | 000 | |||
| 总计 | 000 | 12 | ||||
| 校正总计 | 000 | 11 |
- 解读:
- method (主效应):p = .000 < 0.05,说明教学方法的主效应显著,即不考虑性别时,不同教学方法的效果有差异。
- gender (主效应):p = .000 < 0.05,说明性别的主效应显著,即不考虑教学方法时,男女生成绩有差异。
- *method gender (交互作用)p = 1.000 > 0.05,说明交互作用不显著**。
表2:交互作用(关键)
交互作用不显著意味着,教学方法的效果不会因为性别的不同而改变,反之亦然,我们主要看主效应即可。
表3:简单效应分析(后续分析)
如果交互作用显著,我们就不能只看主效应,而需要进行简单效应分析,即在某个因子的每个水平上,检验另一个因子的效应,检验“在男生中,不同教学方法是否有差异”以及“在女生中,不同教学方法是否有差异”。
- 由于本例交互作用不显著,我们不需要进行此项分析,如果需要,可以通过
语法或PROCESS等插件来实现。
查看交互作用图
你之前设置的绘图会在这里显示。

- 解读:因为交互作用不显著,你会看到两条线基本是平行的,这说明,教学方法对成绩的提升效果,在男生和女生中是相似的,如果两条线不平行甚至交叉,则表示交互作用显著。
第三部分:重复测量方差分析
案例场景
研究者让同一组被试服用三种不同剂量的咖啡因(低、中、高),然后测量他们的反应时间,由于是同一批人,数据是相关的。
- 自变量(主体内因子):咖啡因剂量(3个水平:低、中、高)
- 因变量:反应时间(低剂量下的反应时间、中剂量下的、高剂量下的)
数据准备的特殊性
重复测量的数据格式是宽格式,每一行代表一个被试,每一列代表一个条件下的测量结果。
| 被试ID | low_dose | mid_dose | high_dose |
|---|---|---|---|
| 1 | 500 | 450 | 400 |
| 2 | 520 | 480 | 420 |
| 3 | 480 | 460 | 390 |
| 4 | 510 | 470 | 410 |
操作步骤
步骤1:数据准备
按照上面的“宽格式”输入数据。
步骤2:定义主体内因子
点击:分析 -> 一般线性模型 -> 重复测量...
- 在 主体内因子名 框中输入一个名字,
dose。 - 在 级别数 框中输入水平数,这里是
3。 - 点击
添加,你会看到dose(3)。 - 点击
定义。

步骤3:设置变量
在弹出的新对话框中:
- 将左侧的三个变量
low_dose,mid_dose,high_dose分别按顺序选入右侧的 主体内变量 框中,顺序非常重要! - (可选)可以在
主体间因子框中加入组间变量,如gender,这就成了混合设计的重复测量方差分析。

步骤4:设置选项
点击 选项... 按钮。
- 勾选 描述性统计。
- 勾选 效应量估计。
- 勾选 观测到的幂。
- 勾选 齐性检验。
- 在 显示 部分,勾选 比较主效应,并选择
Bonferroni(适用于重复测量的事后比较)。 - 点击
继续。
步骤5:运行并查看结果
点击 确定 运行分析。
结果解读
表1:球形度检验
重复测量 ANOVA 的一个重要假设是球形度,即各水平间差异的方差相等。
| Mauchly's W | 近似卡方 | df | 显著性 | |
|---|---|---|---|---|
| dose | .980 | .071 | 2 | .964 |
- 解读:关注 显著性 列。显著性 > 0.05(如本例中的 0.964),说明球形度假设成立,可以直接使用第一行的球形度假定结果。< 0.05,则需要使用校正后的结果(如 Greenhouse-Geisser 或 Huynh-Feldt)。
表2:重复测量方差分析表
这是核心结果。
| 源 | III 类平方和 | df | 均方 | F | 显著性 | 偏 Eta 方 |
|---|---|---|---|---|---|---|
| dose | ||||||
| 球形度假定 | 000 | 2 | 000 | 000 | .000 | .956 |
| Greenhouse-Geisser | 000 | 960 | 327 | 000 | .000 | .956 |
| Huynh-Feldt | 000 | 000 | 000 | 000 | .000 | .956 |
| 误差(dose) | ||||||
| 球形度假定 | 000 | 6 | 000 | |||
| Greenhouse-Geisser | 000 | 881 | 020 | |||
| Huynh-Feldt | 000 | 000 | 000 |
- 解读:
- 我们看 球形度假定 那一行即可(因为 p=0.964 > 0.05)。
- dose 对应的 F = 65.000,显著性 = .000 < 0.05。
- 咖啡因剂量的主效应显著,即不同剂量下的反应时间存在显著差异。
表3:成对比较
因为主效应显著,我们需要看这个表进行事后比较。
| (I) dose | (J) dose | 均值差 (I-J) | 标准误 | 显著性a | 95% 置信区间 |
|---|---|---|---|---|---|
| 低 | 中 | 00 | 00 | .000 | [36.67, 63.33] |
| 高 | 00 | 00 | .000 | [86.67, 113.33] | |
| 中 | 低 | -50.00 | 00 | .000 | [-63.33, -36.67] |
| 高 | 00 | 00 | .000 | [36.67, 63.33] | |
| 高 | 低 | -100.00 | 00 | .000 | [-113.33, -86.67] |
| 中 | -50.00 | 00 | .000 | [-63.33, -36.67] |
- 解读:所有组间的两两比较 p 值都小于 0.05,说明低、中、高三种剂量下的反应时间彼此之间均有显著差异,剂量越高,反应时间越短。
总结与常见问题
| 分析类型 | 适用场景 | SPSS 路径 | 关键结果 |
|---|---|---|---|
| 单因素 ANOVA | 1个自变量(3+水平),1个因变量 | 分析 -> 比较均值 -> 单因素 ANOVA |
ANOVA表的显著性,事后检验结果 |
| 多因素 ANOVA | 2+个自变量,1个因变量 | 分析 -> 一般线性模型 -> 单变量 |
主体间效应检验表,关注交互作用 |
| 重复测量 ANOVA | 1个自变量(同一批被试在不同条件下),1个因变量 | 分析 -> 一般线性模型 -> 重复测量 |
球形度检验,重复测量方差分析表 |
常见问题
-
Q: 我的方差齐性检验不显著(p < 0.05),怎么办?
- A: 这说明方差不齐,你可以:
- 在单因素 ANOVA 的
选项中,选择 Welch,它会输出一个不假定方差齐性的结果。 - 在事后检验中,选择 Tamhane's T2 或 Dunnett's C 等不假定方差齐性的检验方法。
- 在单因素 ANOVA 的
- A: 这说明方差不齐,你可以:
-
Q: 我的交互作用显著,我该怎么解释?
- A: 交互作用显著意味着一个自变量的效应依赖于另一个自变量的水平。不要解读主效应! 你应该:
- 画交互作用图,直观观察模式。
- 进行简单效应分析,在“男性”和“女性”两个子群体中,分别做“教学方法”的单因素 ANOVA,这通常需要通过编写 SPSS 语法或使用插件来完成。
- A: 交互作用显著意味着一个自变量的效应依赖于另一个自变量的水平。不要解读主效应! 你应该:
-
Q: 重复测量 ANOVA 的球形度检验不显著(p < 0.05),怎么办?
- A: 这说明球形度假设被违反,你应该查看 Greenhouse-Geisser 或 Huynh-Feldt 这两行校正后的结果,Greenhouse-Geisser 更常用且更保守。
希望这份详细的教程能帮助你掌握 SPSS 中的方差分析!最好的学习方式是找一个自己的数据,跟着教程一步步操作,然后尝试解读结果。
