概率统计——方差分析

致敬:

罗纳德·艾尔默·费希尔(Ronald Aylmer Fisher, R. A. Fisher, 1890年2月17日- 1962年7月29日)
费希尔

基本概念

方差分析这部分所涉及到的概念名词有很多,不过是看着唬人,实际上,名词起的非常直观清楚,比如,双因素混合模型方差分析这个名词,根据名字就知道,这个方差分析有两个因素,而是是混合模型的,说明还有混淆因素的存在

以焦虑症治疗为例,有两种治疗方案,方案A和方案B。有10个焦虑症志愿者,被随机分配一半接受五周的A方案治疗,另一半接受五周的B方案治疗。在治疗结束时,使用某种专业方法进行评测。

名词 概念
方差分析
(Analysis of Variance,ANOVA)
主要研究分类变量作为自变量时,对因变量的影响是否是显著的。
组间因子 在上例中,治疗方案就是组间因子。我的理解就是试验小组划分的主要因素。
因变量 跟数学上的意义差不多,上例中,最后的评测结果就是因变量。
自变量 跟数学上的意义差不多,上例中,治疗方案就是自变量。
均衡设计
(Balanced Design)
每组中的试验元素相等,这时的设计就是均衡设计。上例中,也就是每组的观测人数相等。
非均衡设计
(Unbalanced Design)
每组中的试验元素不相等,这时的设计就是非均衡设计。
单因素组间方差分析
(单因素方差分析)
(One-way ANOVA)
仅有一个类别型变量,也就是只有一个因子,而且试验元素被分成了不同的组,每个元素只被试验一次。在上例中,只有“治疗方案”这一个自变量。
组内因子 上例中,10个人全部接受A方案治疗,分别测试治疗5周和6个月的治疗效果,此时的“时间”就是组内因子。
虽然看上去不同的时间是不同的组,但是这个“组”的概念,我的理解是针对“被试验的元素”分成的多少“组”,这个例子说的就是“这10个人在一个组,被试验了两次”。
单因素组内方差分析
(重复测量方差分析)
“被试验因素”在所有的组内因子下都进行了试验,所以试验次数不止一次,所以就是重复测量方差分析。
主效应 如果5个人用A方案,5个人用B方案,且同时观测不同时间对治疗效果的影响,那么此时有两个因子
“疗法”和“时间”这两个因子就是主效应。
交互效应 “疗法”和“时间”之间有交互影响,这个交互部分就是交互效应。
N因素方差分析 设计包含N个因子时,就是N元素方差分析
混合模型方差分析 当因子既有组间因子,又有组内因子的时候,就是混合模型
N因素混合模型方差分析 这个概念其实就是上面两个概念的组合。
混淆因素 在对“焦虑症”这个病进行试验的过程中,会受到“抑郁症”的影响,“抑郁症”这个因素就是混淆因素。
干扰变数
(Nuisance Variable)
如果对上面这个混淆因素不感兴趣,那么就是干扰变数。
协变量 如果对混淆因素感兴趣,如果在试验前,对“抑郁症”的情况进行科学测量,那么这个“测量值”就是协变量。
协方差分析
(ANCOVA)
一旦设计被引入了协变量,那么该设计就是协方差分析。
多元方差分析
(MANOVA)
因变量不止一个的时候,设计被称作多元方差分析。
【注意】这里的“元”指的是因变量。例子中,就是治疗效果,不要和自变量混淆。
多元协方差分析
(MANCOVA)
以上两个概念的组合。

单因素方差分析

假设我们现在有若干品种的小麦,要在某一地区播种,我们想知道这些品种的小麦的产量有没有显著区别,为此我们设计一个田间试验,取一大块地将其分成形状大小都相同的nn小块。设供选择的品种有kk个,我们打算其中的n1n_1小块种植品种1,n2n_2小块种植品种2,等等。

接下来,使用方差分析的方法来看不同品种小麦的产量是否有显著差异。

  • 设问题中涉及一个因素AA,有kk个水平(种子品种),以YijY_{ij}记第ii个水平的第jj小块地上的亩产量。模型为:Yij=ai+eij,j=1,,n,i=1,,k     (2.1)Y_{ij}=a_i+e_{ij},j=1,\cdots,n,i=1,\cdots,k\space \space \space \space \space (2.1) 其中aia_i表示水平ii的理论平均值(小麦品种ii的平均亩产量),称为水平ii的效应,eije_{ij}就是随机误差。我们假定:E(eij)=0,0<Var(eij)=σ2<,eij     (2.2)E(e_{ij})=0,0<Var(e_{ij})=\sigma^2<\infty,一切e_{ij}独立同分布\space \space \space \space \space (2.2)
  • 因素AA的各水平的高低优劣,取决于其理论平均aia_i的大小。所以,我们把着眼点放在aia_i是否相同,若相同,则因素AA对所考察的指标YY无影响,也就是因素AA的效应不显著,否则显著。我们把所要检验的假设写为:H0:a1=a2==ak     (2.3)H_0:a_1=a_2=\cdots=a_k \space \space \space \space \space (2.3)
  • 之所以各个YijY_{ij}会有差异,无非两个原因:意识各aia_i可能有差异;二是随机误差(eije_{ij})的存在。通过这一分析,我们有了如下想法:找一个衡量全部YijY_{ij}的变异的量:SS=i=1kj=1ni(YijYˉ)2,  Yˉ=i=1kj=1niYijn     (2.4)SS=\sum_{i=1}^k \sum_{j=1}^{n_i}(Y_{ij}-\bar Y)^2,\space \space \bar Y=\sum_{i=1}^k \sum_{j=1}^{n_i}\frac {Y_{ij}}{n}\space \space \space \space \space (2.4) SSSS越大,表示YijY_{ij}之间的差异越大。
  • 接下来,把SSSS分为两部分,一部分表示随机误差的影响,记为SSeSS_e;另一部分表示因素AA的各水平理论平均值aia_i不同带来的影响,记为SSASS_A.
  • 关于SSeSS_e,先固定一个ii,此时对应的所有观测值Yi1,Yi2,,YinY_{i1},Y_{i2},\cdots,Y_{in},它们之间的差异与每个水平的理论平均值不等无关,而是取决于随机误差,反映这些观察值差异程度的量是:j=1ni(YijYˉi)2\sum_{j=1}^{n_i}(Y_{ij}-\bar Y_i)^2其中,Yˉi=Yi1+Yi2++Yinni,i=1,2,,n     (2.5)\bar Y_i= \frac {Y_{i1}+Y_{i2}+\cdots+Y_{in}}{n_i},i=1,2,\cdots,n \space \space \space \space \space (2.5) Yˉi\bar Y_i可以视为对aia_i的估计。把上述平方和做累加得:SSe=i=1kj=1ni(YijYˉi)2     (2.6)SS_e=\sum_{i=1}^k \sum_{j=1}^{n_i}(Y_{ij}-\bar Y_i)^2\space \space \space \space \space (2.6)
  • 可求得SSASS_A
    SSA=SSSSeSS_A=SS-SS_e
    =i=1kj=1ni(YijYˉ)2i=1kj=1ni(YijYˉi)2=\sum_{i=1}^k \sum_{j=1}^{n_i}(Y_{ij}-\bar Y)^2-\sum_{i=1}^k \sum_{j=1}^{n_i}(Y_{ij}-\bar Y_i)^2
    =i=1kj=1ni((YijYˉi)(YˉiYˉ))2i=1kj=1ni(YijYˉi)2=\sum_{i=1}^k \sum_{j=1}^{n_i}\bigg((Y_{ij}-\bar Y_i)-(\bar Y_i-\bar Y)\bigg)^2-\sum_{i=1}^k \sum_{j=1}^{n_i}(Y_{ij}-\bar Y_i)^2
    =i=1kj=1ni((YijYˉi)22(YijYˉi)(YˉiYˉ)+(YˉiYˉ)2)i=1kj=1ni(YijYˉi)2=\sum_{i=1}^k \sum_{j=1}^{n_i}\bigg((Y_{ij}-\bar Y_i)^2-2(Y_{ij}-\bar Y_i)(\bar Y_i-\bar Y)+(\bar Y_i-\bar Y)^2\bigg)-\sum_{i=1}^k \sum_{j=1}^{n_i}(Y_{ij}-\bar Y_i)^2
    =i=1kj=1ni(YijYˉi)22i=1kj=1ni((YijYˉi)(YˉiYˉ))+i=1kj=1ni(YˉiYˉ)2i=1kj=1ni(YijYˉi)2=\sum_{i=1}^k \sum_{j=1}^{n_i}(Y_{ij}-\bar Y_i)^2-2\sum_{i=1}^k \sum_{j=1}^{n_i}\bigg((Y_{ij}-\bar Y_i)(\bar Y_i-\bar Y)\bigg)+\sum_{i=1}^k \sum_{j=1}^{n_i}(\bar Y_i-\bar Y)^2-\sum_{i=1}^k \sum_{j=1}^{n_i}(Y_{ij}-\bar Y_i)^2
    =i=1kj=1ni(YˉiYˉ)22i=1k((YˉiYˉ)j=1ni(YijYˉi))      (ps:j=1ni(YijYˉi)=0)=\sum_{i=1}^k \sum_{j=1}^{n_i}(\bar Y_i-\bar Y)^2-2\sum_{i=1}^k\bigg((\bar Y_i-\bar Y)\sum_{j=1}^{n_i}(Y_{ij}-\bar Y_i)\bigg)\space\space\space\space\space\space(ps:\sum_{j=1}^{n_i}(Y_{ij}-\bar Y_i)=0)
    =i=1kni(YˉiYˉ)2     (2.7)=\sum_{i=1}^{k}n_i(\bar Y_i-\bar Y)^2\space\space\space\space\space(2.7)
    因为Yˉi\bar Y_i可以视为对aia_i的估计,aia_i的差异越大,Yˉi\bar Y_i之间的差异也越大,所以SSASS_A可以用来衡量不同水平之间的差异程度
  • 在统计学上,通常称SSSS总平方和SSASS_A因素AA的平方和SSeSS_e误差平方和,分解式SS=SSA+SSeSS=SS_A+SS_e为该模型的方差分析
  • 基于上面的分析,我们可以得到一个检验方法:
    当比值SSASSe\frac {SS_A}{SS_e}大于某一给定界值时,否定H0H_0,否则就接受H0H_0
  • 为了构造FF分布的检验统计量,我们假定随机误差eije_{ij}满足正态分布N(0,σ2)N(0,\sigma^2),同时我们也假定观察值YijY_{ij}符合正态分布,此时,记:MSA=SSAk1,MSe=SSenk     (2.8)MS_A=\frac {SS_A}{k-1},MS_e=\frac {SS_e}{n-k} \space \space \space \space \space (2.8)H0H_0成立时,有:MSAMSeFk1,nk     (2.9)\frac {MS_A}{MS_e} \sim F_{k-1,n-k} \space \space \space \space \space (2.9)在给定显著性水平α\alpha时,即得假设H0H_0的检验如下:MSAMSeFk1,nk(α)H0H0     (2.10)当\frac {MS_A}{MS_e}≤F_{k-1,n-k}(\alpha)时,接受H_0,不然拒绝H_0\space \space \space \space \space(2.10)
  • MSAMS_A被称为因素AA平均平方和,被除数k1k-1称为因素AA平均平方和的自由度MSeMS_e被称为随机误差的平均平方和nkn-k称为随机误差的平均平方和的自由度
  • 单因素方差分析的方差分析表如下:
项目 SSSS 自由度 MSMS FF 显著性
AA SSASS_A k1k-1 MSAMS_A MSAMSe\frac {MS_A}{MS_e} *,**,无
误差 SSeSS_e nkn-k MSeMS_e
总和 SSSS n1n-1
  • 上表中,对于显著性
    Fk1,nk(0.05)=c1,Fk1,nk(0.01)=c2;F_{k-1,n-k}(0.05)=c_1,F_{k-1,n-k}(0.01)=c_2;
    • MSAMSe>c2\frac {MS_A}{MS_e}>c_2,用**表示,表明AA因素的效应是高度显著的,即在α=0.01\alpha=0.01的显著水平下,拒绝原假设。
    • c2<MSAMSe<c1c_2<\frac {MS_A}{MS_e}<c_1,用*表示。
    • MSAMSe>c1\frac {MS_A}{MS_e}>c_1,不显著。

评估检验的假设条件

根据方差分析的推导,我们知道,方差分析结果的有效性是建立在一系列假设条件之上的,因此,在我们使用方差分析模型时,需要评估进行方差分析的数据,是否符合模型使用的假设条件。

检验
正态性检验 在建立模型时,我们假设变量是服从正态分布的,需要进行正态性检验。
KStestK-S test 用来检验数据是否符合某种分布的一种非参数检验。
其原假设H0H_0:两个数据分布一致或数据符合理论分布。
AndersonDarlingtestAnderson-Darling test 用来检验给定的样本是否来自于某个确定的概率分布的统计检验方法。
若结果种的p值大于0.05,则数据符合正态分布。
ShapiroWilktestShapiro-Wilk test 在小样本的情况下,是一个很普通的正态性检验方法。
原假设H0H_0:数据符合正态分布。
LilliefortestLilliefor test 原假设H0H_0:数据符合正态分布。
方差齐性检验 因为方差分析的实质是检验多个水平的均值是否有显著差异,如果各个水平的观察值方差差异太大,只检验均值之间的差异就没有意义了,所以要进行方差齐性检验。

双因素方差分析

双因素方差分析 与 多因素方差分析 在原理上是相似的。

  • 依然以田间试验的例子。设两个因素A,BA,B,分别有k,lk,l个水平。AA的水平iiBB的水平jj的组合记为(i,j)(i,j),其试验结果记为Yij,i=1,,k,j=1,,lY_{ij},i=1,\cdots,k,j=1,\cdots,l.统计模型为:Yij=μ+ai+bj+eij,i=1,,k,j=1,,l3.1Y_{ij}=\mu+a_i+b_j+e_{ij},i=1,\cdots,k,j=1,\cdots,l(3.1)
  • 其中,eije_{ij}为随机误差,它包含了未加控制的因素(A,B)(A,B以外的因素)及大量随机因素的影响。假定:E(eij)=0,0<Var(eij)=σ2<,eij3.2E(e_{ij})=0,0<Var(e_{ij})=\sigma^2<\infty,一切e_{ij}独立同分布(3.2)
  • 另一部分μ+ai+bj\mu+a_i+b_j,它显示水平组合(i,j)(i,j)的平均效应。可以分为三部分:
    • μ\mu是总平均(一切水平组合效应的平均),是一个基准。
    • aia_i表示由AA的水平ii带来的增加部分,称为因素AA的水平ii的效应。
    • bjb_j表示由BB的水平jj带来的增加部分,称为因素BB的水平jj的效应。
  • 调整μ\mu的值,我么可以补充要求:a1++ak=0,b1++bl=03.3a_1+\cdots+a_k=0,b_1+\cdots+b_l=0(3.3)如果上式不成立,则分别把μ\mu换为(μ+aˉ+bˉ)(\mu+\bar a+\bar b)aia_i换为(aiaˉ)(a_i-\bar a)bjb_j换为(bjbˉ)(b_j-\bar b),则原式不变且上式成立。
  • 上式给了ai,bja_i,b_j的意义一种更清晰的解释:ai>0a_i>0表示AA的水平ii的效应在AA的全部水平的平均效应之上,ai<0a_i<0则相反。
  • 上式也给了μ,ai,bj\mu,a_i,b_j的一个适当的估计法:把YijY_{ij}对一切i,ji,j相加,有:i=1kj=1lYij=klμ+i=1kj=1leij3.4\sum_{i=1}^k \sum_{j=1}^l Y_{ij}=kl\mu+\sum_{i=1}^k\sum_{j=1}^l e_{ij}(3.4)由(3.2)得:Yˉ=i=1kj=1lYijkl3.5\bar Y=\sum_{i=1}^k \sum_{j=1}^l \frac {Y_{ij}}{kl}(3.5)μ\mu的一个无偏估计。其次,有:j=1lYij=lμ+la+j=1leij\sum_{j=1}^l Y_{ij}=l\mu+la+\sum_{j=1}^l e_{ij}于是,记:Yˉi=j=1lYijl,Yˉj=i=1kYijk3.7\bar Y_i=\sum_{j=1}^l \frac {Y_{ij}}{l},\bar Y_j=\sum_{i=1}^k \frac {Y_{ij}}{k}(3.7)
  • 由(3.7)知,Yˉj\bar Y_jμ+ai\mu+a_i的一个无偏估计。于是得到sis_i的一个无偏估计为:ai^=YˉiYˉ,i=1,,k3.8\hat {a_i}=\bar Y_i-\bar Y,i=1,\cdots,k(3.8)同理,bj^=YˉjYˉ,j=1,,l3.9\hat {b_j}=\bar Y_j-\bar Y,j=1,\cdots,l(3.9) ai^,bj^\hat {a_i},\hat {b_j}适合约束条件(3.3)。
  • 下面进行方差分析,要设法把总平方和SS=i=1kj=1l(YijYˉ)2SS=\sum_{i=1}^k\sum_{j=1}^l(Y_{ij}-\bar Y)^2分解为三部分:SSA,SSB,SSeSS_A,SS_B,SS_e,分别表示因素A,BA,B和 随机误差的影响。
  • 这种分解的主要目的是假设检验:H0A:a1==ak=03.10H_{0A}:a_1=\cdots=a_k=0(3.10)H0B:b1==bk=03.11H_{0B}:b_1=\cdots=b_k=0(3.11)
  • H0AH_{0A}成立表示因素AA对指标无影响。在实际问题中,绝对无影响的场合很少见,但如果影响甚小,以至于被随机误差所掩盖的时候,这种影响事实上也是等于没有的。
  • 因此,拿SSASS_ASSeSS_e的比作为检验统计量正符合这一想法。
  • 接下来是方差分解的小技巧:YijYˉ=(YˉiYˉ)+(YˉjYˉ)+(YijYˉiYˉj+Yˉ)Y_{ij}-\bar Y=(\bar Y_i-\bar Y)+(\bar Y_j-\bar Y)+(Y_{ij}-\bar Y_i - \bar Y_j + \bar Y)两边平方,对i,ji,j求和,结合约束条件(3.3),注意到:i=1k(YˉiYˉ)=0.j=1l(YˉjYˉ)=0.\sum_{i=1}^k(\bar Y_i-\bar Y)=0.\sum_{j=1}^l(\bar Y_j-\bar Y)=0. i=1k(YijYˉiYˉj+Yˉ)=j=1l(YijYˉiYˉj+Yˉ)=0\sum_{i=1}^k(Y_{ij}-\bar Y_i-\bar Y_j + \bar Y)=\sum_{j=1}^l(Y_{ij}-\bar Y_i - \bar Y_j + \bar Y)=0即知,所有交叉积之和皆为0,而得到:SS=li=1k(YˉiYˉ)2+kj=1l(YˉjYˉ)2+i=1kj=1l(YijYˉiYˉj+Yˉ)2=SSA+SSB+SSc3.12SS=l\sum_{i=1}^k(\bar Y_i-\bar Y)^2+k\sum_{j=1}^l(\bar Y_j-\bar Y)^2+\sum_{i=1}^k \sum_{j=1}^l(Y_{ij}-\bar Y_i-\bar Y_j+\bar Y)^2=SS_A+SS_B+SS_c(3.12)其中,第一个平方和可以作为因素AA的影响的衡量;第二个平方和可以作为因素BB的影响的衡量;第三个平方和可以作为随机误差的影响
  • 另外,由模型(3.1)以及约束条件(3.3),容易知道:YijYˉiYˉj+Yˉ=(μ+ai+bj+eij)(μ+ai+eˉi)(μ+bj+eˉj)+(μ+eˉ)=eijeˉieˉj+eˉ3.13Y_{ij}-\bar Y_i-\bar Y_j+\bar Y=(\mu+a_i+b_j+e_{ij})-(\mu+a_i+\bar e_i)-(\mu+b_j+\bar e_j)+(\mu+\bar e)=e_{ij}-\bar e_i-\bar e_j+\bar e (3.13)这里面已经毫无μ,ai,bj\mu,a_i,b_j的影响,而只含随机误差。
  • 得到分解式(3.12)后,我们就可以像单因素情况那样,写出方差分析表:
    SSA,SSBSS_A,SS_B自由度分别为其水平数减去1;总和自由度为全部观察值数目klkl减去1;剩下的就是误差平方和自由度:(kl1)(k1)(l1)=(k1)(l1)(kl-1)-(k-1)-(l-1)=(k-1)(l-1)

双因素方差分析表如下:

项目 SSSS 自由度 MSMS FF 显著性
AA SSASS_A k1k-1 MSAMS_A MSAMSe\frac {MS_A}{MS_e} *,**,无
BB SSBSS_B l1l-1 MSBMS_B MSBMSe\frac {MS_B}{MS_e}
误差 SSeSS_e (k1)(i1)(k-1)(i-1) MSeMS_e
总和 SSSS kl1kl-1
  • 在采纳模型(3.1)时,我们引进了一种假定,即:因素A的各水平的优劣比较,与因素B处于哪一个水平无关,反之亦然。
  • 但是,在一般情况下,A和B两因子有“交互作用”,这时,在模型(5.13)中,还要加上表示交互作用的项cijc_{ij},这时,统计分析以及分析结果都变得很复杂。
  • 至于,交互作用是否需要考虑,很大程度上,取决于问题的实际背景和经验。有时,通过试验也可以看出,比如,如果方差σ2\sigma^2的估计MSeMS_e反常地大,则有可能是交互作用导致的。
展开阅读全文

Git 实用技巧

11-24
这几年越来越多的开发团队使用了Git,掌握Git的使用已经越来越重要,已经是一个开发者必备的一项技能;但很多人在刚开始学习Git的时候会遇到很多疑问,比如之前使用过SVN的开发者想不通Git提交代码为什么需要先commit然后再去push,而不是一条命令一次性搞定; 更多的开发者对Git已经入门,不过在遇到一些代码冲突、需要恢复Git代码时候就不知所措,这个时候哪些对 Git掌握得比较好的少数人,就像团队中的神一样,在队友遇到 Git 相关的问题的时候用各种流利的操作来帮助队友于水火。 我去年刚加入新团队,发现一些同事对Git的常规操作没太大问题,但对Git的理解还是比较生疏,比如说分支和分支之间的关联关系、合并代码时候的冲突解决、提交代码前未拉取新代码导致冲突问题的处理等,我在协助处理这些问题的时候也记录各种问题的解决办法,希望整理后通过教程帮助到更多对Git操作进阶的开发者。 本期教程学习方法分为“掌握基础——稳步进阶——熟悉协作”三个层次。从掌握基础的 Git的推送和拉取开始,以案例进行演示,分析每一个步骤的操作方式和原理,从理解Git 工具的操作到学会代码存储结构、演示不同场景下Git遇到问题的不同处理方案。循序渐进让同学们掌握Git工具在团队协作中的整体协作流程。 在教程中会通过大量案例进行分析,案例会模拟在工作中遇到的问题,从最基础的代码提交和拉取、代码冲突解决、代码仓库的数据维护、Git服务端搭建等。为了让同学们容易理解,对Git简单易懂,文章中详细记录了详细的操作步骤,提供大量演示截图和解析。在教程的最后部分,会从提升团队整体效率的角度对Git工具进行讲解,包括规范操作、Gitlab的搭建、钩子事件的应用等。 为了让同学们可以利用碎片化时间来灵活学习,在教程文章中大程度降低了上下文的依赖,让大家可以在工作之余进行学习与实战,并同时掌握里面涉及的Git不常见操作的相关知识,理解Git工具在工作遇到的问题解决思路和方法,相信一定会对大家的前端技能进阶大有帮助。
©️2020 CSDN 皮肤主题: 书香水墨 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值