vlambda博客
学习文章列表

R语言 | 方差分析(下)

R语言

语言学与R语言的碰撞


Xu & Yang


PhoneticSan



学习参考

Discovering Statistics Using R

Statistics for Linguistics with R

How to Do Linguistics with R

R in Action

Analyzing Linguistic Data

R Graphics Cookbook

··· ···

Recap


  1. 当t检验涉及的样本组比较增多时,犯第一类错误的概率会大大增加,这被称为多重比较谬误。

  2. 方差检验可以处理并分析两组及其以上的样本量之间均数差异的比较,它的H1是至少有一组均数与其他组不一样。

  3. F统计量的计算是通过组间均方差与组内均方差的比值得到的。

  4. 单因素方差分析使用aov( )函数、Anova( )函数(car包)、ezANOVA( )函数(ez包)均可。计算前使用bartlett.test( )函数进行方差齐性检验,检测究竟是什么显著性差异采用事后检验,可以调用TukeyHSD( )函数。


R语言 | 方差分析(下)


R: The R Project for Statistical Computing

https://www.r-project.org/

RStudio:

https://rstudio.com/





R Project

Linguistics

1

 重复测量分析



方差分析的主要优点在于,它允许我们可以检验两个及以上不同组之间均数的差异情况,并介绍了单因素方差分析的方法,它类似于扩展版的独立样本t检验。既然有扩展版的独立样本t检验,那么也肯定会有扩展版本的配对样本t检验,这种检验分析方法被称作单因素重复测量方差分析(one-way repeated measures ANOVA),它的典型特征是同一组个体参加了所有不同的处理条件,或者是不同时间点的不同水平。


R语言 | 方差分析(下)

不同处理条件


R语言 | 方差分析(下)

不同时期的不同水平


重复测量的F统计量与单因素独立测量方差分析的结构是一样的,将总方差分为了处理间均方差和处理内均方差。与独立测量不同,重复测量中因为接受不同处理条件的是同一批个体,因此处理间均方差中出现的个体差异就消失了。此外,处理内均方差可以进一步分为被试间方差SSsubjects和误差方差SSerror,前者即处理内个体差异引起的数据差异,因为我们的每个个体接受了不同的处理条件,后者则是排除了个体差异的其他差异,即由处理效应引起的差异。借此,我们的重复测量方差分析的F统计量就可以计算出来了。


R语言 | 方差分析(下)

重复测量方差分析的F统计量构成


重复测量方差分析的基本前提与单因素独立测量方差分析的前提是一致的,即:每个处理内总体分布是一个正态分布,每个处理的总体分布的方差大致相当。除此之外,重复测量方差分析实际上还需假定每个被试在每个处理条件中保持一定的相对位置,换句话说,不能存在一些被试有顺序效应,另一些不存在,这个假定被称作协方差齐性(homogeneity of covariance)。这一问题比较复杂,且在语言学研究中较少见到,因此我们不予以讨论。


之前我们提到过,在R中可以使用多个函数来实现方差分析。上次我们介绍了aov( )函数,今天我们介绍如何使用ez包中的ezANOVA( )函数进行重复测量方差分析。实际上很简单,这个函数中我们需要声明:数据来自于哪里,因变量是哪个,调用within语句说明你的数据来自于哪里即可。此外,ezANOVA( )函数还需要声明标识符是哪一列,使用wid=...表述即可。


R语言 | 方差分析(下)

使用ezANOVA( )进行单因素方差分析



R Project

Linguistics

2

 多因素方差分析



之前我们提到的测量都是在一个自变量的前提下进行的分析,然而我们的研究往往不可能只存在一个自变量,有时候我们要考察两个甚至多个因素对某一因变量的影响,这时我们就需要使用双因素方差分析(two-way ANOVA)或多因素方差分析(factorial ANOVA)来进行统计检验了。下面我们以双因素方差分析为例。


R语言 | 方差分析(下)

莱顿大学Statistics in Linguistics课程讲义


双因素方差分析可以完成两方面的检测:主效应(main-effect)和交互效应(interaction effects)。主效应就是指一个因素的不同水平之间的均数差异,换句话说,即不同水平之间是否存在显著性差异。在多因素方差分析中,我们的不同变量和水平可以构成一个m x n的矩阵表格,那么行与行之间的差异描述了一个因素主效应,列与列之间的差异描述了另一个因素的主效应。比如我们探索不同的信息来源和不同焦点对音高表现的影响,那么行与行之间我检测的则是不同信息源对音高是否存在显著性差异(主效应),列与列之间检测的是有无焦点对音高是否存在显著性差异(主效应)。


R语言 | 方差分析(下)

多因素(双因素)矩阵


R语言 | 方差分析(下)

主效应示意图


多因素方差分析允许我们评估两个及以上因素的组合导致的其他可能的均数差异,两个或多个因素间的交互效应一般发生在一个因素的效应依赖于另一个因素的不同水平时。依旧以双因素方差分析为例,如果语句中有焦点与否时音高出现差异的情况依赖于信息源的不同,那么我们就说存在交互效应。


R语言 | 方差分析(下)

交互效应示意图


由此我们可以看到,双因素方差分析由两方面的假设检验组成:不同自变量的主效应(变量A和变量B);不同自变量之间的交互作用(A x B)。因此,双因素方差分析的F统计量中,处理间均方差包括不同自变量的方差,以及变量之间交互作用的方差,即要将不同因素导致的差异分开,而处理内均方差则与之前的单因素方差分析一致。


R语言 | 方差分析(下)

双因素方差分析的方差


在R中,我们可以使用ezANOVA( )函数实现双因素或多因素方差分析,语句与单因素方差分析类似,只不过在语句中添加进两个或多个因素即可。


双因素/多因素方差分析R语言实现


最后,我们还可能会接触到一种情况:一个自变量是组间差异,一个自变量是组内差异,这种情况下我们可以使用混合方差分析(mixed ANOVA)。而现在,我们有更多的分析方法来进行代替,比如下期我们将开始的回归分析,这里我们不再赘述混合方差分析的方法。


此外,仅仅报告各种分析的p值还远远不够,因为我们无法知道你的样本是否是恰好采集的极端样本,因此在报告p值之外,我们还应当报告效应大小。如何测量?为什么要报告效应大小?之后我们会以一期科普进行介绍。








—END—

排版:Xu & Yang