方差分析-单因素方差分析示例 (Between Subjects)
目录
本文将从一个例子(“微笑宽容实验”)出发,详细介绍单因素方差分析的原理。
1、从一个例子出发
有证据表明,微笑可以减弱人们对他人错误行为的判断,比如在法院上被告的微笑可能带来更少的惩罚。”微笑宽容实验“就是来研究不同类型的微笑带来的宽容程度是否有差异。在这个研究中,136名受试者被分到了4个不同的组,每组受试者会被展示不同微笑类型的图片(false、felt、miserable和neutral)。每位受试者都会给图片打一个score,用来代表受试者对图片里微笑的宽容程度。数据源在此。
2、建立零假设
方差分析的零假设为所有组别的总体均值都相等,即:
其中H0代表零假设,k代表组别。在“微笑宽容实验”中,k=4,并且零假设为:
如果零假设被拒绝,则表明至少有一个组的总体均值与其他组是不同的。
3、什么是MSE和MSB
方差分析是通过分析方差来检测均值差异的一种统计学方法。这种检测方法基于两种对总体均值()的估计。一种估计是基于分组内部得分的差异,被称为组内均方或误差均方(Mean Square Error,MSE)。无论零假设是否为真(总体均值相等),MSE都可以用来估计
。另一种估计是基于组间均值之间的差异,被称为组间均方(Mean Square Between,MSB)。只有在总体均值相等时,MSB才能准确估计
。如果总体均值不想等,MSB的估计值将会大于
。因此,如果MSB比MSE大得多,那么总体均值是不太可能相等的。但是,如果MSB和MSE的值差不多,那么总体均值相等的零假设是成立的。
在计算MSE和MSB之前,需要先介绍方差分析的前提假设:
1)方差齐性(homogeneity of variance):总体方差是相等的。
2)正态分布(normally distributed):总体服从正态分布。
3)样本独立(independent sample):每一个样本值都是独立与其他样本值的。这个假设要求每名受试者只能提供一个样本值,因为如果一名受试者提供了两个样本值,那么这两个值必然不是独立的(这属于within-subjects ANOVA,不在本节内容中)。
以上假设对于双样本t检验也是一样的。
在“微笑宽容实验”中,首先需要计算4个组别的均值和方差:
Condition | Mean | Variance |
False | 5.368 | 3.338 |
Felt | 4.912 | 2.825 |
Miserable | 4.912 | 2.113 |
Neutral | 4.118 | 2.319 |
表1 “微笑宽容实验”各组的均值和方差
4、样本大小
后续方差分析的前提是每组受试者的数量是相等的(不相等的分析不在本篇考虑内)。我们用n来表示每组的受试者数量,用N来表示所有的受试者数量。在“微笑宽容实验”中,受试者被分到了4个组别,每个组别都是34人,所以我们有n=34,N=136。
5、计算MSE
我们前面做了方差齐性的假设,即假设每个组别的总体方差()都是相等的。这个
就是MSE的估计值,我们可以通过计算样本方差的均值来得到:
6、计算MSB
对于样本均值抽样分布的方差(),有以下公式:
其中n是每组的样本数量。通过变换,可以得到:
因此,如果我们知道了,再乘以n就得到了总体方差
。尽管我们不知道样本均值抽样分布的方差
,我们可以通过样本均值的方差来估计它。对于“微笑宽容实验”,4个样本均值的方差为:
这里VAR.S()表示计算样本方差。
总结一下MSB的计算步骤:
1)计算样本均值
2)计算样本均值的方差
3)样本均值的方差乘以n
扼要重述
如果总体均值是相等的,那么MSE和MSB都可以认为是的准确估计,并且二者的值应当是相等的。当然,二者不会完全相等,因为他们是通过数据的不同角度计算得出的:MSB通过样本均值计算得出,而MSE通过样本方差计算得出。
当总体均值不相等时,MSE仍可以有效的估计,因为MSE是通过样本方差计算得到的,而总体均值的差异不会影响样本方差。但是,总体均值的差异会影响MSB对
的估计,因为总体均值的差异与样本均值之前的差异是相关的。因此,如果样本均值之间的差异越大,MSB也会越大。
简而言之,无论总体均值是否相等,MSE都可以用来估计。然而,只有在样本均值相等的条件下,MSB才可以用来估计
,并且当总体均值不相等时,MSB的估计值会偏大。
7、比较MSE和MSB
比较MSE和MSB是方差分析中至关重要的一步。既然当总体均值不相等时,MSB会比MSE的估计值更大,那么当计算出的MSB值比MSE值更大时,也就说明了总体均值是不相等的。但是即使当总体均值是相等的时候,也会偶然地发生MSB比MSE要大的情况,所以想要得到可靠的结论,MSB必须比MSE大的足够多。但是多大的MSB才算大呢?对于“微笑宽容实验”的数据来说,MSB 和MSE分别为9.178和2.649,这个差异足够大吗?为了回答这一问题,我们需要知道如果总体均值是相等的,达到这一差距或更大差距的概率是多少。统计学家Fisher从数学上回答了这一问题。尽管与Fisher最初的公式形式略有不同,但是确定概率的标准方法是都是基于MSB与MSE的比率。这个比率以Fisher命名,称为 F ratio。
对于“微笑宽容实验”的数据,F ratio为:
因此,MSB是MSE的3.465倍。如果所有组别的总体均值都是相等的,有可能得到这个结果吗?回答这个问题还要考虑样本数量。当样本数量很小时,得到这样的结果不足为奇,因为结果是不稳定的。可是,当样本数量很大时,MSB和MSE的值基本是不会改变的,所以F ratio为3.465或者更大是反常的。图1展示了“微笑宽容实验”的样本数量下,F的抽样分布。可以看到,分布是正偏态的。
图1 F的分布
从图1可以看出,3.465或更大的F ratio是反常现象。3.465右侧黑色区域的面积,代表得到此F或者更大F的概率,这个概率值为0.018。换句话说,零假设“总体均值是相等的”的概率值(p value)为0.018,所以我们可以拒绝零假设。于是,我们得到结论:至少有一个组的总体均值是不同于其他组的。
F分布的形状取决于样本数量。更准确地说,分布的形状取决于两个自由度(df):一个是分子的自由度(MSB),另一个是分母的自由度(MSE)。我们都知道方差估计值的自由度等于样本数量减一,MSB是k个均值的方差估计,所以它的自由度为k-1。MSE是k个方差的均值,每个方差的自由度都是n-1,所以MSE的自由度为k(n-1)=N-k,其中N代表总样本数量,n代表每组的样本数量,k代表组数。总结如下:
对于“微笑宽容实验”,我们有:
8、分析差异的来源
为什么一个实验中受试者之间的打分是不同的?以“微笑宽容实验”中“False Smile”组和“Felt Smile”组的两名受试者为例。这两名受试者之所以打出不同的分数,第一个原因是,两名受试者看到的两组图片是不同类型的微笑。第二个原因是,这两名受试者可能本身对于他人的宽容程度就有所不同。第三个原因是,其中一名受试者在实验前的一次考试中获得了很低的分数,因此心情很低落。对于两名受试者为什么打出不同的分数,你可以想象出无数种其他的原因。但是除了第一个原因(受试者被区别对待),其他所有的原因都不是实验想去研究的,因此,这些原因导致的所有差异都无法解释。
通常,我们称上面无法解释的差异为误差,但是这个称呼并不意味着真的发生了错误。差异的原因可以被归为两部分,要么是由于受试者被区别对待引起的,要么是由于误差(所有未被测量到的差异)。
方差分析一个很重要的特性就是,它能够将差异分为不同的来源。在方差分析中,一般用平方和( Sum of SQuares,SSQ)来表示差异。总差异被定义为每一个受试者的打分与所有受试者打分均值的平方差之和。所有受试者打分的均值被称为总均值(Grand Mean,GM)。当每组受试者的数量相等时,总均值等于各组均值的平均值。总平方和定义为:
上面公式意味着,取每个得分,减去总均值,将差值平方,然后将这些平方值相加。对于“微笑宽容实验”,=377.19
条件平方和的计算方法如下式:
其中,n是每组样本的数量,k是组数,是第一组的均值,
是第二组的均值,
是第k组的均值。对于“微笑宽容实验”,该值为:
误差平方和是每个分数与其组内平均值的平方偏差之和,公式如下:
其中,是第一组第i名受试者的打分,
是第一组打分的均值,
是第二组第i名受试者的打分,
是第二组打分的均值,等等。对于“微笑宽容实验”,各组打分的均值分别是:5.368、4.912、4.912和4.118,因此
为:
误差平方和也可以通过减法得到:
因此,总平方和377.19可以被分为和
。
一旦平方和计算出来了,就可以很容易地计算均方(MSB和MSE)。计算公式如下:
其中,是分子,值为k-1=3。
是分母自由度,值为N-k=136-4=132。需要注意的是,
通常被称为
,即误差自由度。
可以看到,按上面方法计算出的MSB和MSE与之前计算的值是一样的。
下面列出的方差分析汇总表是分析方差的一种方便形式:
Source | df | SSQ | MS | F | p |
Condition | 3 | 27.535 | 9.178 | 3.465 | 0.0182 |
Error | 132 | 349.654 | 2.649 | ||
Total | 135 | 377.189 |
表2 方差分析汇总表
第一列Source为变异的来源,第二列df为自由度,第三列SSQ为平方和,第四列MS为均方,第五列F为F ratio,最后一列p为概率值。需要指出的是,均方总是等于平方和除以自由度,F和p只与Condition相关。尽管均方和可以通过平方和除以自由度计算得出,但这样的计算方式没有什么意义,就省略了。
最后,总结一下单因素方差分析的基本步骤:
1)建立零假设
2)计算MSE
3)计算MSB
4)计算两个自由度和F值
5)计算SSQ,解释差异的原因