one-way ANOVA(analysis of variance) 单向方差分析

问题描述:在比较两组独立正态分布样本的均值时用t test,那么比较多组样本的均值呢?要用one-way ANOVA。
Note: 使用ANOVA时,要假定k个组的方差相同。如果k个组的方差并不相同,就不应该使用ANOVA,要分别对两组间用t检验。

当我们看到这种要同时比较多组样本的均值时,首先就要想到one-way ANOVA,然后再想想用此检验方法是否真的合适。比如下面的例子:

研究肺功能与吸烟的关系,以“用力中期呼出量(FEF)”作为指标,统计结果如下,

组号 组名 mean(FEF) SD(FEF) n
1 NS(非吸烟者) 3.78 0.79 200
2 PS(被动吸烟者) 3.30 0.77 200
3 NI(非吸入吸烟者) 3.32 0.86 50
4 LS(轻度吸烟者) 3.23 0.78 200
5 MS(中度吸烟者) 2.73 0.81 200
6 HS(重度吸烟者) 2.59 0.82 200

思考过程:
1,首先,6组的方差接近,没有理由认为6组方差不等,可以使用one-way ANOVA;
2,建立零假设:6组的平均值都相同;
备择假设:6组中至少有两组均值不等。
3,计算组间平方和(组间波动)、组内平方和(组内波动)。组间平方和越大,预示着不同组的差别越大,越倾向于备择假设成立;反之,p-value就越大,倾向于零假设成立。
Within SS = i = 1 k j = 1 n i ( y i j y i ˉ ) 2 y i j i j y i ˉ i \sum_{i=1}^{k}\sum_{j=1}^{n_{i}}(y_{ij}-\bar{y_{i}})^{2},其中y_{ij}为第i组的第j个元素、\bar{y_{i}}为第i组的平均值
容易计算Within SS = i = 1 k ( n i 1 ) s i 2 \sum_{i=1}^{k}(n_{i}-1)s_{i}^2
Between SS = i = 1 k j = 1 n i ( y i ˉ y ˉ ˉ ) 2 y i ˉ i y ˉ ˉ \sum_{i=1}^{k}\sum_{j=1}^{n_{i}}(\bar{y_{i}}-\bar{\bar{y}})^2,其中\bar{y_{i}}为第i组的平均、\bar{\bar{y}}为全部的平均
容易计算Between SS = i = 1 k n i y i ˉ 2 n y ˉ ˉ 2 \sum_{i=1}^{k}n_{i}\bar{y_{i}}^2-n\bar{\bar{y}}^2
4,构建检验统计量,书上说Between MS/Within MS服从F分布(Between MS = Between SS/(k-1),即Between SS除以对应自由度;Within MS = Within SS/(n-k),即Within SS除以剩下的自由度,总自由度为n-1)。
F统计量 = Between MS/Within MS(服从 F k 1 , n k F_{k-1,n-k} 分布)
5,进行统计推断。
精确p值为p = Pr( F k 1 , n k > F F_{k-1,n-k} > F )

对上述例子进行计算:

Within MS = 184.38/5 = 36.875
Between MS = 663.87/1044 = 0.636
F = Between MS/Within MS = 58 ~ F 5 , 1044 F_{5, 1044}

结论:p < 0.001,所以应该要拒绝原假设,即至少有两组的平均肺功能不同。

上面的例子到这里还没有完,很多情况下会关注到底哪些组之间有显著差别,有以下几种方式:

1,指定两组间比较的t检验(least significant difference, 即LSD法),此方法跟分别对两组间用t检验的区别是要用总体的标准差(即Within MS)代替两组的标准差进行t统计量的计算。

2,预先选取 l 1 l_{1} 个组和 l 2 l_{2} 个组进行比较。例如要比较吸入抽烟者和非抽烟者的肺功能,将上表三组抽烟者合并成一组去与非抽烟者比较。遇到的问题是在人群中轻度、中度和重度抽烟者的比例不是表中的1:1:1,而是1:7:2,此时要用到线性约束的估计和检验。

一个线性约束是值对某些组的均值做线性组合,而线性组合中的系数之和为0: L = i = 1 k c i y ˉ i = 1 k c i = 0 L = \sum_{i=1}^{k}c_{i}\bar{y},要求\sum_{i=1}^{k}c_{i} = 0

2.1 用线性约束表示非抽烟者和吸入式抽烟者为: L = y 1 ˉ 0.1 y 2 ˉ 0.7 y 3 ˉ 0.2 y 4 ˉ L = \bar{y_{1}} -0.1\bar{y_{2}}-0.7\bar{y_{3}}-0.2\bar{y_{4}}
2.2 设 μ L 线 L \mu_{L}为线性约束L的理论均值,则建立的假设检验如下:
H 0 : μ L = 0 H 1 : μ L 0 H_{0}: \mu_{L} = 0对H_{1}: \mu_{L} \neq 0
2.3 由 V a r ( y i ˉ ) = s 2 / n i L V a r ( L ) = s 2 i = 1 k c i 2 / n i Var(\bar{y_{i}}) = s^2/n_{i},有L的方差为Var(L) = s^2\sum_{i=1}^{k}c_{i}^2/n_{i}
2.4 计算统计量 t = L / s e ( L ) t = L/se(L)
2.5 进行统计推断
结论:易计算t = 14.69 ~ t 1044 t_{1044} ,p<0.001,抽烟者与非抽烟者肺功能有很大差别。

3,多重比较-Bonferroni法
3.1 此法考虑了多重假设检验,如果总共有k个组比较,则可能有 ( k 2 ) \binom{k}{2}个两组比较 ,如果此时把每个两组比较的p-value设为0.05,则考虑所有组对时会有很大误差(小概率事件在多次重复实验中总会发生)。
3.2 记每个两组比较的显著性水平为 α \alpha^* ,E为至少有一个两组比较是统计显著性的事件。则Pr(E)称为实验的type 1 error,即假阳性率。下面我们要决定 α \alpha^* 值使得 P r ( E ) = α Pr(E)=\alpha
P r ( E ˉ ) = P r ( ) = 1 α Pr(\bar{E})=Pr(没有一个两组比较具有显著差异)=1-\alpha ,
在每个两组比较独立的情况下有 P r ( E ˉ ) = ( 1 α ) c , c = ( k 2 ) Pr(\bar{E})=(1-\alpha^*)^c,c=\binom{k}{2} .
则有 1 α = ( 1 α ) c 1 c α 1-\alpha=(1-\alpha^*)^c\approx1-c\alpha^*
则有 α = α / ( k 2 ) \alpha^*=\alpha/\binom{k}{2} ,通常每个两组比较不可能都是统计独立的,所以 α \alpha^* 的合适值要大于 α / ( k 2 ) \alpha/\binom{k}{2} ,即Bonferroni是保守的。
3.3 接下来除了用 α α \alpha^*替换\alpha ,其它的检验操作和LSD一样。
Note: 在事先没有计划要比较特定的组且k较大时,建议使用多重比较法;在组数较小且仅对特定组感兴趣时,建议使用通常的t检验法(LSD法)。
4 线性约束下的多重比较-scheffe法
相比于2中的比较,此多重比较适用于没有事先确定要比较的线性组合,要对多重比较进行校正。
4.1 此方法的t统计量计算与2中一样:
t = L / s e ( L ) t = L/se(L)
4.2 进行统计推断:
t &gt; a 2 = ( k 1 ) F k 1 , n k , 1 α t &lt; a 1 = ( k 1 ) F k 1 , n k , 1 α H 0 ; t &gt; a_{2}=\sqrt{(k-1)F_{k-1,n-k,1-\alpha}}或t&lt;a_{1}=-\sqrt{(k-1)F_{k-1,n-k,1-\alpha}}时,拒绝H_{0};
a 1 &lt; = t &lt; = a 2 H 0 a_{1}&lt;=t&lt;=a{2}时,接受H_{0}。 其中k为组数,n为总数据数。
#######################################################

上面是用假设检验的方法对单向方差分析进行描述,下面我们用线性回归的方法对其进行描述。

上述的分析可用固定效应(相对于随机效应来说,随机效应只关心组内方差和组间方差哪个贡献大,而不关心具体的组;而固定效应要比较不同组均值的大小)的单向方差分析来表示:
y i j = μ + α i + e i j y_{ij}=\mu+\alpha_{i}+e_{ij},
μ 其中\mu为常数,代表所有组数据混合后的均值;
α i i i \alpha_{i}为第i组的常数,代表第i组的均值与所有数据均值的差异; e i j 0 σ 2 i j μ + α i e_{ij}为随机误差,均数为0且方差为\sigma^2,代表第i组第j个观察与均值\mu+\alpha_{i}间的随机误差。

单向ANOVA与多重线性回归的关系:
建立模型:以非吸烟组为对照组, x 1 . . . x 5 x_{1}...x_{5}分别对应着被动吸烟、非吸入吸烟、轻度吸烟、中度吸烟和重度吸烟。
y = α + β 1 x 1 + β 2 x 2 + β 3 x 3 + β 4 x 4 + β 5 x 5 + e y=\alpha+\beta_{1}x_{1}+\beta_{2}x_{2}+\beta_{3}x_{3}+\beta_{4}x_{4}+\beta_{5}x_{5}+e ,
对模型的解释:
x1 = 1 (属于被动吸烟组) or 0 (不属于) ;
x2 = 1 (属于非吸入吸烟组) or 0 (不属于) ;
x3 = 1 (属于轻度吸烟组) or 0 (不属于) ;
x4 = 1 (属于中度吸烟组) or 0 (不属于) ;
x5 = 1 (属于重度吸烟组) or 0 (不属于) ;
对照组,即非吸烟组,可以理解为y的平均值为 α \alpha ;
β i , i = 1...5 , i \beta_{i},i=1...5,为第i组与对照组的平均差异
e为误差项,均值为0,方差为 σ 2 \sigma^2

1 假设要比较k个组的未知均数,此处组i中的观察值为正态分布,其均值和方差分别为 μ i = α + α i ( α i = β i x i ) V a r = σ 2 \mu_i=\alpha+\alpha_{i} (\alpha_{i}=\beta_{i}x_{i}),Var=\sigma^2
2 H 0 : α i = 0 ; H 1 : α i 0 H_{0}:\alpha_{i}=0;H_{1}:至少有一个\alpha_{i}不为0
3 多重回归模型中的回归SS和残差SS对应着单向ANOVA中的组间SS和组内SS,F统计量和p-value都相同。
#######################################################

上面讨论是固定效应的单因素方差分析,下面来聊聊随机效应的单因素方差分析

一份调查妇女月经后期血样中雌二醇水平的统计结果如下:

重复1 重复2 重复间极差 平均值
1 25.2 30.4 4.9 27.95
2 11.1 15.0 3.9 13.05
3 8.0 8.1 0.1 8.05
4 20.7 16.9 3.8 18.80
5 5.8 8.4 2.6 7.10

Note:抽取5个人,每个人有两份重复的血样。

提出问题:对于血样雌二醇的水平,研究同一个的波动和不同人之间的差异哪个大。
分析问题:对于上表,并不关心不同人的平均水平的差异,而是关心数据方差的来源,这就要用到随机效应的ANOVA模型。观察发现,不同人的平均值差别较大,标准差正比于均值,要使标准差独立于平均值,可以对原始测量值去对数。
建立模型:

y i j = μ + α i + e i j , i = 1 , 2 , . . . , k , j = 1 , 2 , . . . , n i y_{ij} = \mu + \alpha_{i} + e_{ij}, i = 1, 2, ..., k, j = 1, 2, ..., n_{i}
此处:
y i j i j l n ( ) y_{ij}为第i个受试者的第j次重复(ln(血液雌二醇水平)
α i N ( 0 , σ A 2 ) \alpha_{i}为受试者之间差异的随机变量,服从N(0, \sigma_{A}^2)
e i j α i e i j e_{ij}代表受试者组内的差异,它独立于\alpha_{i}且独立于其它e_{ij}

猜你喜欢

转载自blog.csdn.net/linkequa/article/details/84248536