问题描述:在比较两组独立正态分布样本的均值时用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组的平均值
∑i=1k∑j=1ni(yij−yiˉ)2,其中yij为第i组的第j个元素、yiˉ为第i组的平均值;
容易计算Within SS =
∑
i
=
1
k
(
n
i
−
1
)
s
i
2
\sum_{i=1}^{k}(n_{i}-1)s_{i}^2
∑i=1k(ni−1)si2。
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}}为全部的平均
∑i=1k∑j=1ni(yiˉ−yˉˉ)2,其中yiˉ为第i组的平均、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
∑i=1kniyiˉ2−nyˉˉ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}
Fk−1,n−k分布)
5,进行统计推断。
精确p值为p = Pr(
F
k
−
1
,
n
−
k
>
F
F_{k-1,n-k} > F
Fk−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}
F5,1044
结论:p < 0.001,所以应该要拒绝原假设,即至少有两组的平均肺功能不同。
上面的例子到这里还没有完,很多情况下会关注到底哪些组之间有显著差别,有以下几种方式:
1,指定两组间比较的t检验(least significant difference, 即LSD法),此方法跟分别对两组间用t检验的区别是要用总体的标准差(即Within MS)代替两组的标准差进行t统计量的计算。
2,预先选取 l 1 l_{1} l1个组和 l 2 l_{2} l2个组进行比较。例如要比较吸入抽烟者和非抽烟者的肺功能,将上表三组抽烟者合并成一组去与非抽烟者比较。遇到的问题是在人群中轻度、中度和重度抽烟者的比例不是表中的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 L=∑i=1kciyˉ,要求∑i=1kci=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}}
L=y1ˉ−0.1y2ˉ−0.7y3ˉ−0.2y4ˉ
2.2 设
μ
L
为
线
性
约
束
L
的
理
论
均
值
,
则
建
立
的
假
设
检
验
如
下
:
\mu_{L}为线性约束L的理论均值,则建立的假设检验如下:
μL为线性约束L的理论均值,则建立的假设检验如下:
H
0
:
μ
L
=
0
对
H
1
:
μ
L
≠
0
H_{0}: \mu_{L} = 0对H_{1}: \mu_{L} \neq 0
H0:μL=0对H1:μL̸=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}
Var(yiˉ)=s2/ni,有L的方差为Var(L)=s2∑i=1kci2/ni
2.4 计算统计量
t
=
L
/
s
e
(
L
)
t = L/se(L)
t=L/se(L)
2.5 进行统计推断
结论:易计算t = 14.69 ~
t
1044
t_{1044}
t1044,p<0.001,抽烟者与非抽烟者肺功能有很大差别。
3,多重比较-Bonferroni法
3.1 此法考虑了多重假设检验,如果总共有k个组比较,则可能有
(
k
2
)
个
两
组
比
较
\binom{k}{2}个两组比较
(2k)个两组比较,如果此时把每个两组比较的p-value设为0.05,则考虑所有组对时会有很大误差(小概率事件在多次重复实验中总会发生)。
3.2 记每个两组比较的显著性水平为
α
∗
\alpha^*
α∗,E为至少有一个两组比较是统计显著性的事件。则Pr(E)称为实验的type 1 error,即假阳性率。下面我们要决定
α
∗
\alpha^*
α∗值使得
P
r
(
E
)
=
α
Pr(E)=\alpha
Pr(E)=α,
P
r
(
E
ˉ
)
=
P
r
(
没
有
一
个
两
组
比
较
具
有
显
著
差
异
)
=
1
−
α
Pr(\bar{E})=Pr(没有一个两组比较具有显著差异)=1-\alpha
Pr(Eˉ)=Pr(没有一个两组比较具有显著差异)=1−α,
在每个两组比较独立的情况下有
P
r
(
E
ˉ
)
=
(
1
−
α
∗
)
c
,
c
=
(
k
2
)
Pr(\bar{E})=(1-\alpha^*)^c,c=\binom{k}{2}
Pr(Eˉ)=(1−α∗)c,c=(2k).
则有
1
−
α
=
(
1
−
α
∗
)
c
≈
1
−
c
α
∗
1-\alpha=(1-\alpha^*)^c\approx1-c\alpha^*
1−α=(1−α∗)c≈1−cα∗,
则有
α
∗
=
α
/
(
k
2
)
\alpha^*=\alpha/\binom{k}{2}
α∗=α/(2k),通常每个两组比较不可能都是统计独立的,所以
α
∗
\alpha^*
α∗的合适值要大于
α
/
(
k
2
)
\alpha/\binom{k}{2}
α/(2k),即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)
t=L/se(L)
4.2 进行统计推断:
t
>
a
2
=
(
k
−
1
)
F
k
−
1
,
n
−
k
,
1
−
α
或
t
<
a
1
=
−
(
k
−
1
)
F
k
−
1
,
n
−
k
,
1
−
α
时
,
拒
绝
H
0
;
t > a_{2}=\sqrt{(k-1)F_{k-1,n-k,1-\alpha}}或t<a_{1}=-\sqrt{(k-1)F_{k-1,n-k,1-\alpha}}时,拒绝H_{0};
t>a2=(k−1)Fk−1,n−k,1−α或t<a1=−(k−1)Fk−1,n−k,1−α时,拒绝H0;
a
1
<
=
t
<
=
a
2
时
,
接
受
H
0
。
a_{1}<=t<=a{2}时,接受H_{0}。
a1<=t<=a2时,接受H0。其中k为组数,n为总数据数。
#######################################################
上面是用假设检验的方法对单向方差分析进行描述,下面我们用线性回归的方法对其进行描述。
上述的分析可用固定效应(相对于随机效应来说,随机效应只关心组内方差和组间方差哪个贡献大,而不关心具体的组;而固定效应要比较不同组均值的大小)的单向方差分析来表示:
y
i
j
=
μ
+
α
i
+
e
i
j
,
y_{ij}=\mu+\alpha_{i}+e_{ij},
yij=μ+αi+eij,
其
中
μ
为
常
数
,
代
表
所
有
组
数
据
混
合
后
的
均
值
;
其中\mu为常数,代表所有组数据混合后的均值;
其中μ为常数,代表所有组数据混合后的均值;
α
i
为
第
i
组
的
常
数
,
代
表
第
i
组
的
均
值
与
所
有
数
据
均
值
的
差
异
;
\alpha_{i}为第i组的常数,代表第i组的均值与所有数据均值的差异;
αi为第i组的常数,代表第i组的均值与所有数据均值的差异;
e
i
j
为
随
机
误
差
,
均
数
为
0
且
方
差
为
σ
2
,
代
表
第
i
组
第
j
个
观
察
与
均
值
μ
+
α
i
间
的
随
机
误
差
。
e_{ij}为随机误差,均数为0且方差为\sigma^2,代表第i组第j个观察与均值\mu+\alpha_{i}间的随机误差。
eij为随机误差,均数为0且方差为σ2,代表第i组第j个观察与均值μ+αi间的随机误差。
单向ANOVA与多重线性回归的关系:
建立模型:以非吸烟组为对照组,
x
1
.
.
.
x
5
分
别
对
应
着
被
动
吸
烟
、
非
吸
入
吸
烟
、
轻
度
吸
烟
、
中
度
吸
烟
和
重
度
吸
烟
。
x_{1}...x_{5}分别对应着被动吸烟、非吸入吸烟、轻度吸烟、中度吸烟和重度吸烟。
x1...x5分别对应着被动吸烟、非吸入吸烟、轻度吸烟、中度吸烟和重度吸烟。
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
y=α+β1x1+β2x2+β3x3+β4x4+β5x5+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组与对照组的平均差异
βi,i=1...5,为第i组与对照组的平均差异;
e为误差项,均值为0,方差为
σ
2
\sigma^2
σ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
μi=α+αi(αi=βixi),Var=σ2;
2
H
0
:
α
i
=
0
;
H
1
:
至
少
有
一
个
α
i
不
为
0
H_{0}:\alpha_{i}=0;H_{1}:至少有一个\alpha_{i}不为0
H0:αi=0;H1:至少有一个α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}
yij=μ+αi+eij,i=1,2,...,k,j=1,2,...,ni
此处:
y
i
j
为
第
i
个
受
试
者
的
第
j
次
重
复
(
l
n
(
血
液
雌
二
醇
水
平
)
y_{ij}为第i个受试者的第j次重复(ln(血液雌二醇水平)
yij为第i个受试者的第j次重复(ln(血液雌二醇水平)
α
i
为
受
试
者
之
间
差
异
的
随
机
变
量
,
服
从
N
(
0
,
σ
A
2
)
\alpha_{i}为受试者之间差异的随机变量,服从N(0, \sigma_{A}^2)
αi为受试者之间差异的随机变量,服从N(0,σA2)
e
i
j
代
表
受
试
者
组
内
的
差
异
,
它
独
立
于
α
i
且
独
立
于
其
它
e
i
j
e_{ij}代表受试者组内的差异,它独立于\alpha_{i}且独立于其它e_{ij}
eij代表受试者组内的差异,它独立于αi且独立于其它eij。