SPSS详细教程:三因素重复测量方差分析
一、问题与数据
研究者想知道举重训练(如在健身房中阻力训练)和心肺功能训练(如慢跑等有氧运动)对久坐男性力量的影响。研究者设计了6周的心肺功能训练项目和6周的举重训练项目。
研究者招募了12名久坐的男性作为研究对象,并让研究对象参与4组试验:(1)完全无训练;(2)只进行心肺功能训练(cardio);(3)只进行举重训练(weights);和(4)进行心肺功能训练和举重训练,每名研究对象都进行4组试验。
下表更为清楚的展示了4组试验中研究对象是否进行训练的情况:
Table: Coding of the four trials by the cardio and weights independent variables.
每组试验都持续6周,并在每组试验开始时、试验中和试验结束时3个时间点分别测量研究对象的力量。由于进行了4组试验,每组试验测量了3个时间点的力量,共会出现12个变量,如下表所示:
Table: Variable naming for the cells of the design (i.e., combinations by the cardio, weights and time independent variables).
部分数据如下:
二、对问题的分析
使用三因素重复测量方差分析(Three-way Repeated Measures Anova)进行分析时,需要考虑5个假设。
对研究设计的假设:
假设1:因变量唯一,且为连续变量;
假设2:有三个受试者内因素(Within-Subject Factor),每个受试者内因素有2个或以上的水平。
注:在重复测量的方差分析模型中,对同一个体相同变量的不同次观测结果被视为一组,用于区分重复测量次数的变量被称为受试者内因素,受试者内因素实际上是自变量。
对数据的假设:
假设3:受试者内因素的各个水平,因变量没有极端异常值;
假设4:受试者内因素的各个水平,因变量需服从近似正态分布;
假设5:对于受试者内因素的各个水平组合而言,因变量的方差协方差矩阵相等,也称为球形假设。
三、对假设的判断
那么,用Three-way Repeated Measures Anova分析时,如何考虑和处理这5个假设呢?
由于假设1-2都是对研究设计的假设,需要研究者根据研究设计进行判断。
本例中因变量为研究对象的力量,是连续变量,符合假设1:因变量唯一,且为连续变量;
共有3个受试者内因素:是否进行举重训练(两个水平:1个水平为“进行举重训练”,另一个水平为“不进行举重训练”)、是否进行心肺功能训练(两个水平:1个水平为“进行心肺功能训练”,另一个水平为“不进行心肺功能训练”)和时间因素(3个水平:研究开始时、研究中和研究结束时),符合假设2:有3个受试者内因素(Within-Subject Factor),每个受试者内因素有2个或以上的水平。
下面我们主要对数据的假设3-5进行判断。
(一) 检验假设3、4的操作
1. 在主菜单点击Analyze > Descriptive Statistics > Explore...,如下图:
2. 出现Explore对话框,将12个变量均选入Dependent List,点击Plots;
3. 出现下图Plots对话框;
4. 在Boxplots下选择Factor levels together,去掉Descriptive下Stem-and-leaf,选择Normality plots with tests,点击Continue,点击OK。
(二) 检验假设3:受试者内因素的各个水平,因变量没有极端异常值;
1. 下图为输出的箱式图结果。在SPSS中,将距离箱子边缘超过1.5倍箱身长度的数据点定义为异常值,用“圆圈”表示,右上标为异常值在数据表中所对应的行数,以圆点表示;将距离箱子边缘超过3倍箱身长度的数据点定义为极端值(极端异常值),用“*”表示,右上标代表异常值在数据表中所对应的行数。
2. 本例中没有出现极端值,为了方便理解,下图是出现极端值的一个举例的情况。在下图中,可以看到两个单因素异常值:a)9号研究对象的两个训练都参加的中期力量平分cardio_yes_weights_yes_time_mid比其他人低;b)8号研究对象的两个训练都不参加的试验开始时力量得分cardio_no_weights_no_time_pre显著高于其他人。
3. 异常值的处理
(1) 导致数据中存在异常值的原因有3种:
1) 数据录入错误:首先应该考虑异常值是否由于数据录入错误所致。如果是,用正确值进行替换并重新进行检验;
2) 测量误差:如果不是由于数据录入错误,接下来考虑是否因为测量误差导致(如仪器故障或超过量程),测量误差往往不能修正,需要把测量错误的数据删除;
3) 真实存在的异常值:如果以上两种原因都不是,那最有可能是一种真实的异常数据。这种异常值不好处理,但也没有理由将其当作无效值看待。目前它的处理方法比较有争议,尚没有一种特别推荐的方法。
需要注意的是,如果存在多个异常值,应先把最极端的异常值去掉后,重新检查异常值情况。这是因为有时最极端异常值去掉后,其他异常值可能会回归正常。
(2) 异常值的处理方法分为2种:
1) 保留异常值:
① 因变量转换成其他形式;
② 将异常值纳入分析,并坚信其对结果不会产生实质影响。
2) 剔除异常值:
直接删除异常值很简单,但却是没有办法的办法。当我们需要删掉异常值时,应报告异常值大小及其对结果的影响,最好分别报告删除异常值前后的结果。而且,应该考虑有异常值的个体是否符合研究的纳入标准。如果其不属于合格的研究对象,应将其剔除,否则会影响结果的推论。
(三) 检验假设4:受试者内因素的各个水平,因变量需服从近似正态分布
1. 对于样本量较小(<50例研究对象)且正态Q-Q图无法判断正态性的研究,推荐使用Shapiro-Wilk方法检验正态性。当P<0.05时,认为不是正态分布。本例中,P均大于0.05,说明力量得分服从正态分布。
可以这样报告:通过Shapiro-Wilk's 检验,力量得分服从正态分布(P<0.05)。
2. 如果数据不服从正态分布,可以有如下3种方法进行处理:
(1) 数据转换:对转换后呈正态分布的数据进行三因素重复测量方差分析。当各组因变量的分布形状相同时,正态转换才有可能成功。对于一些常见的分布,有特定的转换形式,但是对于转换后数据的结果解释可能比较复杂。
(2) 直接进行分析:由于方差分析对于偏离正态分布比较稳健,尽管没有专门针对三因素重复测量方差分析的验证。实际上,如果样本量不是很小,对于稍微偏态的分布,只要各组偏态分布相似,都不会认为用方差分析有问题。然而,对于偏态程度多大是可以接受的,目前没有一致的意见。因此,如果直接进行检验,需要在结果中对正态分布的偏离程度进行报告。
(3) 检验结果的比较:将转换后和未转换的原始数据分别进行三因素重复测量方差分析,如果二者结论相同,则采用未转换的原始数据分析的结果即可。
四、SPSS操作
(一) 三因素重复测量方差分析的操作
1. 在主菜单下点击Analyze > General Linear Model > Repeated measures...,如下图所示:
2. 出现Repeated Measures Define Factor(s)对话框,如下图所示;
3. 在Within-Subject Factor Name:中将“factor1”更改为cardio,因为cardio有两个水平,在Number of Levels:中填入2;
4. 点击Add,出现下图;
5. 在Within-Subject Factor Name:中填入weights,因为weights的训练也是两个水平,在Number of Levels:中填入2,点击Add;
6. 在Within-Subject Factor Name:中填入time,因为每个试验共测量了3次力量得分,在Number of Levels:中填入3,点击Add;
7. 在Measure Name下方填入因变量“strength”,点击Add,出现下图;
注:该步骤不是必须的,这样做只是为了让结果更清晰。
8. 点击Define,出现下图Repeated Measures对话框;
9. 如下图所示,Within-Subjects Variables后面的括号内是受试者内因素的名字,将左侧六个变量均选入右侧框中,如下图所示;
10. 点击Plots,出现Repeated Measures: Profile Plots对话框,如下图所示;
11. 将time选入Horizontal Axis:框中,将weights选入Separate Lines:框中,将cardio选入Separate Plots:框中;
12. 点击Add,出现下图,点击Continue;
13. 点击Options,出现Repeated Measures: Options对话框;
14. 将cardio*weights*time选入Display Means for:中,在Display下方勾选Descriptive statistics,点击Continue,点击OK。
(二) 检验假设5:对于受试者内因素的各个水平组合而言,因变量的方差协方差矩阵相等,也称为球形假设。
1. 在判断受试者内因素之间是否存在交互作用前,需要先判断交互作用是否符合球形假设。
在Mauchly's Test of Sphericity表中,给出了球形假设的检验结果。如果P<0.05,则球形假设不满足;如果P>0.05,则满足球形假设。本例中,交互项cardio*weights*time的χ2=0.418,P=0.811,所以对于交互项,因变量满足球形假设。
2. 然而,对于cardio和weights两个自变量,因为只有两个水平,所以没有出现球形检验的结果,例如下表中突出显示的“weights”。
五、结果解释
在解释三因素重复测量方差分析的结果前,我们需要先了解分析的步骤,共有4步,但不一定都用到,取决于数据的结果:
(1) 判断自变量之间存在三因素交互作用?
(2) 如果自变量之间存在三因素交互作用,继续判断是否存在简单两因素交互作用;如果自变量之间不存在三因素交互作用,则需判断是否存在两因素交互作用。
(3) 如果存在简单两因素交互作用,判断是否存在简单单独效应;如果不存在简单两因素交互作用,结束分析;如果存在两因素交互作用,判断是否存在单独效应;如果不存在两因素交互作用,结束分析;
(4) 如果存在简单单独效应,判断简单两两比较是否有意义;如果不存在简单单独效应,结束分析;如果存在单独效应,判断两两比较是否有意义;如果不存在单独效应,结束分析。
下图可以更清晰的理解分析步骤。
(一) 判断三因素交互作用是否存在
1. 理解三因素交互作用的概念
进行三因素重复测量方差分析的主要目的是判断是否存在三因素交互作用。三因素交互作用是指两因素交互作用在另一因素的不同水平对因变量的影响不同。
为了更清楚的理解这个概念,可以看下图:
在不进行cardio训练时,进行体重训练和不进行体重训练两组人的力量随时间的变化曲线不平行,也就是weights*time交互作用存在;
在进行cardio训练时,进行体重训练和不进行体重训练两组人的力量随时间的变化曲线也不平行,说明交互作用也存在。
然而,这两个交互作用的形式在有cardio训练和没有cardio训练时不同,说明交互项weights*time在因素cardio不同水平对因变量的影响不同,这就是三因素交互作用。
2. 球形假设的检验结果
(1) 在判断三个受试者内因素是否存在交互作用前,需要先判断该交互作用是否符合球形假设。在Mauchly's Test of Sphericity表中,给出了球形假设的检验结果。如果P<0.05,则球形假设不满足;如果P>0.05,则满足球形假设。
本例中,交互项cardio*weights*time的χ2=0.418,P=0.811,所以对于交互项,因变量满足球形假设。
(2) 当违背了球形假设条件时,需要进行epsilon (ε)校正。如下图突出显示,SPSS共用了三种方法进行校正,分别为:Greenhouse-Geisser、Huynh-Feldt和Lower-bound。
在实际应用中,只用Greenhouse-Geisser和Huynh-Feldt两种方法,这两种方法计算的epsilon (ε)的值越低,说明违反球形假设的程度越大,当epsilon (ε)=1时,说明完美的服从了球形假设。
Maxwell & Delaney (2004)建议当epsilon (ε)<0.75时,使用Greenhouse-Geisser方法校正。其他统计学家建议当epsilon (ε)>0.75时,使用Huynh-Feldt方法校正。
3. 满足球形假设情况下的结果解读
上述交互项满足球形假设,我们接下来需要看三因素的交互项对因变量的影响是否有统计学意义。
在Tests of Within-Subjects Effects表中,如果P>0.05,则表示交互项无统计学意义(本例中,P值显示为0.000,不代表P值实际为0,而是表示P<0.001)。如表中突出显示的内容所示,在Sphericity Assumed行,cardio、weights和time的交互作用具有统计学意义,F(2,22)=14.260,P<0.001。
提数值对应的位置见下表:
各个部分对应的含义见下表:
4. 不满足球形假设情况的结果解读
当不满足球形假设时,可以采用Greenhouse & Geisser方法进行校正,如下表中突出显示的内容。
可见,三因素交互项的自由度(df)由原来符合球形假设时的2变成了1.921,误差项的自由度由原来的22变成了21.134,均方(Mean Square)由原来的286.965变成了298.722,cardio、weights和time的交互作用具有统计学意义,F(1.921,21.134)=14.260,P<0.001。
(二) 三因素交互作用存在时的分析步骤
当三因素交互作用有意义时,需要逐一分析简单两因素交互作用(simple two-way interactions)。
我们已经知道cardio*weights*time对因变量有统计学意义,即其中两个自变量的交互作用在第三个因变量的不同水平对因变量的影响不同。所以,我们需要进行两因素交互作用的检验,即在任意一因素的不同水平另外两个因素的交互作用是否对因变量有影响。
本例中,我们仅选择验证cardio的不同水平,weights*time是否对因变量有影响。
注:简单两因素交互作用是指在三因素交互作用存在时,两因素交互作用在另一自变量的某个水平有意义。
1. 当不进行cardio训练时,weights*time是否有统计学意义
由于是检验weights和time两个变量之间是否存在交互作用,我们需要对cardio各水平内进行两因素重复测量方差分析。
首先,我们先分析cardio为no时的两因素交互作用,如下图所示先分析左边的数据。数值对应的变量名称见左侧突出显示区域。
我们对cardio为no时的两因素交互作用进行SPSS的操作:
(1) SPSS操作
1) 在主菜单下点击Analyze > General Linear Model > Repeated measures...,如下图所示:
2) 出现Repeated Measures Define Factor(s)对话框,如下图所示;
3) 单击cardio(2),点击Remove按钮,在Number of Levels:只剩weights(2)和time(3),如下图所示;
4) 点击Define,出现下图Repeated Measures对话框,将cardio为no的选入右侧Within-Subjects Variables中,点击OK。
(2) 结果解释
1) 球形假设结果
首先需要判断weights*time是否符合球形假设。如下图所示,P=0.170,大于0.05,所满足球形假设。
2) 简单两因素交互作用的结果
在Tests of Within-Subjects Effects表中,如果P>0.05,则表示交互项无统计学意义(本例中,P值显示为0.000,不代表P值实际为0,而是表示P<0.001)。
如表中突出显示的内容所示,在Sphericity Assumed行, weights和time的交互作用具有统计学意义,F(2,22)=28.941, P<0.001。
2. 当进行cardio训练时,weights*time是否有统计学意义
如下图所示,我们需要分析cardio为yes时,weights*time是否有统计学意义。如下图所示分析右边的数据。数值对应的变量名称见右侧突出显示区域。
(1) SPSS的操作
1) 在主菜单下点击Analyze > General Linear Model > Repeated measures...,如下图所示:
2) 出现Repeated Measures Define Factor(s)对话框,如下图所示;
3) 点击Define,出现下图Repeated Measures对话框,将cardio为no的选入左侧框中。
4) 出现下图:
5) 将cardio为yes的变量选入右侧Within-Subjects Variables中,如下图所示,点击OK。
(2) 结果解释
1) 球形假设结果
首先需要判断weights*time是否符合球形假设。如下图所示,P=0.541,大于0.05,所满足球形假设。
2) 简单两因素交互作用的结果
在Tests of Within-Subjects Effects表中,如果P>0.05,则表示交互项无统计学意义。如表中突出显示的内容所示,在Sphericity Assumed行,weights和time的交互作用不具有统计学意义,F(2,22)=2.570, P=0.099。
3. 单独效应
当简单两因素交互作用有意义时,单独分析主效应的意义不大,需要逐一分析某因素不同水平另一因素对因变量的影响,即各受试者内因素的单独效应。
如下图所示,在不进行cardio训练时,分别分析蓝色和红色的内容,即weights为no时和weights为yes时。
(1) SPSS操作
1) 在主菜单下点击Analyze > General Linear Model > Repeated measures...,如下图所示:
2) 出现Repeated Measures Define Factor(s)对话框,如下图所示;
3) 单击weights(2),点击Remove按钮,在Number of Levels:只剩 time(3),如下图所示;
4) 点击Define,出现下图Repeated Measures对话框,将cardio为no、weights 为no的变量选入右侧Within-Subjects Variables中,点击OK.
5) 点击Options,出现Repeated Measures: Options对话框,如下图所示;
6) 将time选入Display Means for:中,下方Compare main effects为勾选状态,在Confidence interval adjustment:下选择Bonferroni,在Display下方勾选Descriptive statistics,点击Continue,点击OK。
7) 第二个time的单独效应重复上述操作,将步骤4) 中将cardio为no而weights为yes的变量选入右侧框中。
检验time的单独效应是指在weights的不同水平中比较时间因素的差异。受试者内因素weights有两个水平,所以需要做两次比较,如下图所示。做这些比较与做2次单因素重复测量方差分析相同。
(2) 当不进行cardio训练,不进行weights训练时time的单独效应
1) 由于time的单独效应是比较3个水平,所以需要判断是否符合球形假设。如下图所示,P=0.170,大于0.05,所满足球形假设。
2) 然后看Test of Within-Subjects Effects表,该表给出了不进行weights训练时time的单独效应,当不进行weights训练时,时间因素对力量的影响没有统计学意义,F(2,22) =1.323,P=0.287。
(3) 当不进行cardio训练,进行weights训练时time的单独效应
1) 由于time的单独效应是比较3个水平,所以需要判断是否符合球形假设。如下图所示,P=0.299,大于0.05,满足球形假设。
2) 然后看Test of Within-Subjects Effects表,该表给出了进行weights训练时time的单独效应,时间因素对力量的影响有统计学意义,F(2,22) =78.918,P<0.001。
3) 下面是两两比较的结果。
首先我们先要找到1, 2和3对应的含义,在Within-Subjects Factors中可以找到对应的含义。
结合Descriptive Statistics表和Pairwise Comparisons表所示,在未进行cardio训练而进行weights训练的试验中,试验前、试验中和试验后力量评分分别为46.6 ± 5.5kg、57.9±4.3kg和72.6±6.6kg。
试验中与试验前力量的差异具有统计学意义(P=0.001),差值为11.333(95%置信区间:5.318-17.349)kg;试验后与试验中力量的差异具有统计学意义(P<0.001),差值为14.667(95%置信区间:7.817-21.516)kg;试验后与试验前力量的差异具有统计学意义(P<0.001),差值为26.000(95%置信区间:21.568-30.432)kg。
(三) 不存在三因素交互作用时的分析步骤
当三因素交互作用不存在时,需要解读两因素交互作用。
1. 球形检验
首先,需要判断两因素交互项是否符合球形假设。如下图所示,可以看到P值为0.051和1.151,均大于0.05,所以符合球形假设。
2. Test of Within-Subjects Effects表给出了三个两因素交互项对因变量的影响的结果。在Test of Within-Subjects Effects表中,P<0.05时,交互项对因变量的影响存在统计学意义;P≥0.05时,交互项对因变量的影响不存在统计学意义。
如下图突出显示所示,cardio*weights对因变量的影响具有统计学意义,F(1, 11) = 75.259,P<0.001, cardio*time对因变量的影响没有统计学意义,F(1, 11) = 0.599,P=0.558,weights*time对因变量的影响具有统计学意义,F(1, 11) = 20.833,P<0.001。
七、撰写结论
采用三因素重复测量方差分析方法,判断心肺功能训练、举重训练和时间对久坐男性力量评分的影响。
经Shapiro-Wilk检验,各组数据服从正态分布(P>0.05);通过箱式图判断,各组数据无异常值。经Mauchly's球形假设检验,对于交互项cardio*weights*time,因变量的方差协方差矩阵相等(P>0.05)。
Cardio、weights和time的交互作用对力量评分的影响有统计学意义,F(2, 22) = 14.260,P<0.001。因此,对两因素交互作用cardio*weights、weights*time和cardio *time进行简单两因素交互作用的检验。
选择在cardio的不同水平验证weights和time的交互作用,当不进行cardio训练时,weights和time的交互作用具有统计学意义,F(2, 22) = 28.941,P<0.001;当进行cardio训练时,weights和time的交互作用不具有统计学意义,F(2,22)=2.570,P=0.099。
由于不进行cardio训练时,weights和time的交互作用具有统计学意义,所以需要进一步分析weights和time的单独效应。
当不进行weights训练时,时间因素对力量的影响没有统计学意义,F(2,22) =1.323,P=0.287;进行weights训练时,时间因素对力量的影响有统计学意义,F(2,22) =78.918,P<0.001。数据以均数±标准差的形式表示。
在未进行cardio训练而进行weights训练的试验中,试验前、试验中和试验后力量评分分别为46.6 ± 5.5kg、57.9±4.3kg和72.6±6.6kg。
试验中与试验前力量的差异具有统计学意义(P=0.001),差值为11.333(95%置信区间:5.318-17.349)kg;试验后与试验中力量的差异具有统计学意义(P<0.001),差值为14.667(95%置信区间:7.817-21.516)kg;试验后与试验前力量的差异具有统计学意义(P<0.001),差值为26.000(95%置信区间:21.568-30.432)kg。
(如果你想使用文中数据进行练习,请随时给小咖(微信:xys2016ykf)发消息,小咖将原始数据发给你。)
更多阅读
关注医咖会,轻松学习统计学~
有临床研究设计或统计学方面的难题?快加小咖个人微信(xys2016ykf),拉你进统计讨论群和众多热爱研究的小伙伴们一起交流学习。如果想进群,添加小咖时请注明“加群”二字。
点击左下角“阅读原文”,看看医咖会既往推送了哪些统计教程。