方差分析(ANOVA)简记
文章目录
- 基本概念
- 单因素试验的方差分析
- 前提和假设
- 基本思路
- 差异分解
- 图像理解
- 差异的统计学特征
- 检验统计量
基本概念
方差分析(Analysis of Variance,简称ANOVA),是一种对多个水平或多组样本之间期望的差异进行显著性检验的方法。
对于两组样本,如X1,X2,…,Xn1X_{1}, X_{2}, \ldots, X_{n_1}X1,X2,…,Xn1为来自正态总体X∼N(μ1,σ2)X \sim N(\mu_1, \sigma^2)X∼N(μ1,σ2)的一个样本,Y1,Y2,…,Yn2Y_{1}, Y_{2}, \ldots, Y_{n_2}Y1,Y2,…,Yn2为来自正态总体Y∼N(μ2,σ2)Y \sim N(\mu_2, \sigma^2)Y∼N(μ2,σ2)的一个样本,往往可以使用t检验方法检验两个总体均值的差异是否显著。但如果有s(s≥2)s(s \ge 2)s(s≥2)组样本,或某个要检验的随机变量X受到某种因素A的影响,因素A有s个水平A1,A2,…,AsA_1,A_2,\ldots,A_sA1,A2,…,As,随机变量X在各组/各水平下的均值分别为μ1,μ2,…,μs\mu_1,\mu_2,\ldots,\mu_sμ1,μ2,…,μs。若想要检验随机变量X是否受到因素A的影响,即检验这s组样本之间的均值是否有显著差异,即检验假设μ1=μ2=…=μs\mu_1 = \mu_2 = \ldots = \mu_sμ1=μ2=…=μs,可以尝试进行Cs2C_s^2Cs2次成对t检验,但这样做的复杂度显然较高。因此常常使用方差分析的方法来进行这种类型的显著性检验。
单因素试验的方差分析
在此先简单记录单因素试验的方差分析,即仅仅考察某个单一因素对随机变量的影响。
前提和假设
之后的讨论均基于如下前提和假设:
有一种因素A对随机变量X有一定影响,因素A有s个水平,假设各个水平下随机变量X的总体均服从正态分布,且在各个水平下的方差相等,均为σ2\sigma^2σ2。在A的s个水平下分别进行nj(j=1,2,⋯,s)n_{j}(j=1,2,\cdots,s)nj(j=1,2,⋯,s)次独立试验。试验结果如下:
A1A_1A1 | A2A_2A2 | ⋯\cdots⋯ | AsA_sAs | |
---|---|---|---|---|
X11X_{11}X11 | X12X_{12}X12 | ⋯\cdots⋯ | X1sX_{1s}X1s | |
X21X_{21}X21 | X22X_{22}X22 | ⋯\cdots⋯ | X2sX_{2s}X2s | |
⋮\vdots⋮ | ⋮\vdots⋮ | ⋮\vdots⋮ | ⋮\vdots⋮ | |
Xn11X_{n_{1}1}Xn11 | Xn22X_{n_{2}2}Xn22 | ⋯\cdots⋯ | XnssX_{n_{s}s}Xnss | |
样本总和 | T⋅1T_{\cdot1}T⋅1 | T⋅2T_{\cdot2}T⋅2 | ⋯\cdots⋯ | T⋅sT_{\cdot s}T⋅s |
样本均值 | X⋅1‾\overline{X_{\cdot1}}X⋅1 | X⋅2‾\overline{X_{\cdot2}}X⋅2 | ⋯\cdots⋯ | X⋅s‾\overline{X_{\cdot s}}X⋅s |
样本方差 | S12S_1^2S12 | S22S_2^2S22 | ⋯\cdots⋯ | Ss2S_s^2Ss2 |
总体均值 | μ1\mu_1μ1 | μ2\mu_2μ2 | ⋯\cdots⋯ | μs\mu_sμs |
- 注意每个水平下的实验次数njn_{j}nj可以不一样,故表格不一定是正方形。总共的实验次数n=n1+n2+⋯+nsn = n_1 + n_2 + \cdots + n_sn=n1+n2+⋯+ns;
- 样本总和T⋅j=∑i=1njXijT_{\cdot j} = \sum_{i=1}^{n_{j}} X_{i j}T⋅j=∑i=1njXij,即第j个水平/第j组样本(第j列)的加和;
- 样本均值X⋅j‾=1njT⋅j=1nj∑i=1njXij\overline{X_{\cdot j}} = \frac{1}{n_j}T_{\cdot j} = \frac{1}{n_j}\sum_{i=1}^{n_{j}} X_{i j}X⋅j=nj1T⋅j=nj1∑i=1njXij,即第j个水平/第j组样本(第j列)的样本均值;
- 样本方差Sj2=1nj−1∑i=1nj(Xij−X⋅j‾)2S_j^2 =\frac{1}{n_j-1} \sum_{i=1}^{n_{j}} (X_{ij} - \overline{X_{\cdot j}})^2Sj2=nj−11∑i=1nj(Xij−X⋅j)2,即第j个水平/第j组样本(第j列)的样本方差;
- 因素A有s个水平,假设各个水平下随机变量X的总体均服从正态分布,且各个水平下的方差相等,用数学语言描述即为:各个水平Aj(j=1,2,⋯,s)A_j (j=1,2,\cdots,s)Aj(j=1,2,⋯,s)下的样本(即各列数据)X1j,X2j,⋯,XnjjX_{1j},X_{2j},\cdots,X_{n_j j}X1j,X2j,⋯,Xnjj来自具有相同方差的正态总体N(μj,σ2)N(\mu_j, \sigma^2)N(μj,σ2),总体均值μj(j=1,2,⋯,s)\mu_j (j=1,2,\cdots,s)μj(j=1,2,⋯,s)则表示各个水平(各组)的总体均值。
基本思路
要检验A这一因素对随机变量X没有任何影响,则检验A因素在s个不同水平下时,随机变量X的期望差异不显著,即零假设为:H0:μ1=μ2=…=μsH_0: \mu_1 = \mu_2 = \ldots = \mu_sH0:μ1=μ2=…=μs。为验证该假设建模:
定义总平均为各水平总体均值的算术平均数:μ=1n∑j=1njnjμj\mu = \frac{1}{n}\sum_{j=1}^{n_{j}} n_j\mu_jμ=n1∑j=1njnjμj,即在不考虑因素A时随机变量X的总体平均。相应地,数据的总平均为X‾=1n∑j=1njT⋅j=1n∑j=1s∑i=1njXij\overline{X} = \frac{1}{n}\sum_{j=1}^{n_{j}} T_{\cdot j} = \frac{1}{n}\sum_{j=1}^{s}\sum_{i=1}^{n_{j}} X_{ij}X=n1∑j=1njT⋅j=n1∑j=1s∑i=1njXij。根据各个水平下的总体方差均为σ2\sigma^2σ2的假设,则随机变量X的总体方差自然也就是σ2\sigma^2σ2。结合中心极限定理,则有:
X‾∼N(μ,σ2n)\overline{X} \sim N(\mu, \frac{\sigma^2}{n}) X∼N(μ,nσ2)
因素A在不同水平下可能会对总平均有不同影响,再定义水平AjA_jAj的效应为:δj=μj−μ\delta_j = \mu_j - \muδj=μj−μ,即该水平下的均值与总平均的差异(体现了因素A在该水平上导致的均值的“位移”)。根据定义,有∑j=1snjδj=0\sum_{j=1}^{s} n_{j} \delta_{j} = 0∑j=1snjδj=0。
在A的某个水平下进行试验,每次试验的结果则可以表示为总平均μ\muμ、该水平下的效应δj\delta_jδj与一个随机误差ϵij\epsilon_{ij}ϵij的和。即:
Xij=μj+ϵij=μ+δj+ϵijX_{ij} = \mu_j + \epsilon_{ij} = \mu + \delta_j + \epsilon_{ij} Xij=μj+ϵij=μ+δj+ϵij
往往认为随机误差ϵij\epsilon_{ij}ϵij为每次试验随机产生的,故互相独立且均服从正态分布N(0,σ2)N(0, \sigma^2)N(0,σ2),也就是该随机误差导致了组内数据的抖动,产生了总体方差σ2\sigma^2σ2。
差异分解
引入总变差STS_TST,即所有数据与数据总平均之间的差异之和:
ST=∑j=1s∑i=1nj(Xij−X‾)2S_T = \sum_{j=1}^{s}\sum_{i=1}^{n_{j}} (X_{ij} - \overline{X})^2 ST=j=1∑si=1∑nj(Xij−X)2
再定义误差平方和SES_ESE和效应平方和SAS_ASA:
SE=∑j=1s∑i=1nj(Xij−X⋅j‾)2=∑j=1s(nj−1)Sj2S_E = \sum_{j=1}^{s}\sum_{i=1}^{n_{j}} (X_{ij} - \overline{X_{\cdot j}})^2 = \sum_{j=1}^{s}(n_j - 1)S_j^2 SE=j=1∑si=1∑nj(Xij−X⋅j)2=j=1∑s(nj−1)Sj2
SA=∑j=1snj(X⋅j‾−X‾)2=∑j=1snjX⋅j‾2−nX‾2S_A = \sum_{j=1}^{s} n_j(\overline{X_{\cdot j}} - \overline{X})^2 = \sum_{j=1}^{s} n_j \overline{X_{\cdot j}}^2 - n\overline{X}^2 SA=j=1∑snj(X⋅j−X)2=j=1∑snjX⋅j2−nX2
误差平方和体现的是水平内差异(即组内方差)的和,该部分差异仅由随机误差引起。效应平方和体现的是水平间差异(组间差异)的和,该部分差异则由随机误差以及因素A不同水平下的绝对效应共同引起。基于如上定义,可以推导出(详细推导过程省略):
ST=SE+SAS_T = S_E + S_A ST=SE+SA
图像理解
下面作图辅助对上述各种概念的理解:
其中各水平/各组数据通过不同颜色的点表示,不同水平的数据所在的区域大小体现了组内方差;各区域的几何中心点即为该组数据的样本均值X⋅j‾\overline{X_{\cdot j}}X⋅j。所有数据所在的区域大小体现了总变差STS_TST;整体区域的几何中心即为总平均μ\muμ。局部区域的几何中心与整体区域的几何中心之间的距离就体现了对应水平的效应δj\delta_jδj。
差异的统计学特征
先单独看各水平下的数据,即各列数据。根据各个水平下的总体服从等方差正态分布N(μj,σ2)N(\mu_j, \sigma^2)N(μj,σ2)的假设,有
(nj−1)Sj2σ2=(nj−1)∑i=1nj(Xij−X⋅j‾)2σ2∼χ2(nj−1)\frac{(n_j - 1)S_j^2}{\sigma^2} = \frac{(n_j - 1)\sum_{i=1}^{n_{j}} (X_{ij} - \overline{X_{\cdot j}})^2}{\sigma^2} \sim \chi^2(n_j - 1) σ2(nj−1)Sj2=σ2(nj−1)∑i=1nj(Xij−X⋅j)2∼χ2(nj−1)
结合χ2\chi^2χ2分布的可加性,将各列相加即得:
∑j=1s(nj−1)Sj2σ2=SEσ2∼χ2(n−s)\frac{\sum_{j=1}^{s}(n_j - 1)S_j^2}{\sigma^2} = \frac{S_E}{\sigma^2} \sim \chi^2(n - s) σ2∑j=1s(nj−1)Sj2=σ2SE∼χ2(n−s)
进而有E(SE)=(n−s)σ2E(S_E)=(n-s)\sigma^2E(SE)=(n−s)σ2,即SEn−s\frac{S_E}{n-s}n−sSE就是总体方差σ2\sigma^2σ2的无偏估计。这样也再次证明了误差平方和SES_ESE为组内方差的和,仅由随机误差引起。
再看不同水平之间的数据。对于效应平方和,可以推导出如下关系(详细推导过程省略):
E(SA)=(s−1)σ2+∑j=1snjδj2E(S_A) = (s-1)\sigma^2 + \sum_{j=1}^{s}n_j \delta_j^2 E(SA)=(s−1)σ2+j=1∑snjδj2
这也详细说明了效应平方和SAS_ASA由随机误差(第一部分)以及因素A不同水平下的绝对效应(第二部分)共同引起。
检验统计量
此时就可以考虑若零假设成立,即因素A在不同水平下随机变量X的期望差异不显著,也就是说因素A的不同水平的绝对效应的和(即上式中第二部分)为0。因此有:
E(SA)=(s−1)σ2;SAσ2∼χ2(s−1)E(S_A) = (s-1)\sigma^2 \; ; \qquad \frac{S_A}{\sigma^2} \sim \chi^2(s - 1) E(SA)=(s−1)σ2;σ2SA∼χ2(s−1)
构建统计量:
F=SA/(s−1)SE/(n−s)∼F(s−1,n−s)F = \frac{S_A / (s-1)}{S_E / (n-s)} \sim F(s-1, n-s) F=SE/(n−s)SA/(s−1)∼F(s−1,n−s)
若零假设成立,则SEn−s\frac{S_E}{n-s}n−sSE和SAs−1\frac{S_A}{s-1}s−1SA均为总体方差σ2\sigma^2σ2的无偏估计,即上述统计量不得过大。若上述检验量过大(具体值由显著性水平α\alphaα决定),则说明效应平方和SAS_ASA比误差平方和SES_ESE大,也就是说因素A的不同水平的绝对效应之和较大,进而可以认为因素A会影响随机变量X的均值。
一句话总结方差分析就是看组内差异和组间差异是否大致相同,进而推断组间均值是否一致。
方差分析(ANOVA)简记相关推荐
- 5、特征选择(filter):方差分析(ANOVA)
方差分析ANOVA特征筛选 一.方差分析(Analysis of Variance,简称ANOVA)基本原理 二.连续变量和离散变量的方差分析 2.1.提出假设 2.2.采集数据 2.3.设计统计量 ...
- 【定量分析、量化金融与统计学】R语言方差分析ANOVA(F检验)
目录 一.前言 Fixed-effects models.Random-effects models.Mixed-effects models. 二.ANOVA使用的前提假设与假设检验 三.ANOVA ...
- 方差分析ANOVA:理论、推导与R语言实现
方差分析 1 概要 方差分析(Analysis of variance, ANOVA) 主要研究分类变量作为自变量时,对因变量的影响是否是显著的. 方差分析的方法是由20世纪的统计学家Ronald A ...
- R语言方差分析ANOVA
自己整理编写的R语言常用数据分析模型的模板,原文件为Rmd格式,直接复制粘贴过来,作为个人学习笔记保存和分享.部分参考薛毅的<统计建模与R软件>和<R语言实战> I. 单因素方 ...
- ryuyan 方差分析_【r-高级|实战|统计】R中的方差分析ANOVA
方差分析主要通过F检验来进行效果评测,若治疗方案的F检验显著,则说明检验样本组间均值不同. ANOVA模型拟合 从函数形式上看,ANOVA和回归方法都是广义线性模型的特例.因此回归分析章节中提到的lm ...
- sklearn学习-SVM例程总结2(特征选择——单因素方差分析(方差分析anova ))
SVM with univariate feature selection(单因素方差分析) 本文隶属于机器学习的特征选择部分,是训练前对数据的预处理部分.对于机器学习而言,特征选择是影响结果的极其重 ...
- R方差分析(anova)以及Tukey检验
R方差分析(anova)以及Tukey检验 目录 R方差分析(anova)以及Tukey检验 假设检验 假设检验的应用 方差分析ANOVA
- ryuyan 方差分析_如何使用R语言做不同设计的方差分析(ANOVA)、简单效应检验、事后多重比较?...
感谢 @hcp4715 和 @李晓煦 两位老师之前的精彩回答! 这个问题是我几个月前提的,当时还很少用R来做传统意义上的方差分析,所以比较想知道"如何使用R做方差分析.简单效应检验.事后多重 ...
- 统计学习:方差分析(ANOVA2)
统计学习 最近在做信号处理的时候发现自己的理论知识不够,因此,开始了理论的重学之路,特开此系列帖子,总结自己的学习收获以及方便后来的小伙伴. 方差分析ANOVA 方差的分析,通常被叫做ANOVA,可以 ...
- R语言学习笔记(七)方差分析
文章目录 写在前面 方差分析(ANOVA) 一些术语 单因素方差分析 多重比较 评估检验的假设条件 双因素方差分析 双因素方差分析的实现 可视化方法实例 正交试验设计与方差分析 正交表 考虑样本间的交 ...
最新文章
- flex viewstack的简单应用
- layui table行点击tr_layui框架table表格实现单击行选中checkbox功能
- android 点击外部接收事件,Android Dialog外部点击事件
- 动态页面加载速度太慢
- 古巴比伦乘法_古巴:为生产做准备
- 和redis_Redis 缓存
- 如何使用PressForward进行内容创建
- IOS UI UITableView
- mqtt调试助手_腾讯物联网开发平台入门操作,如何使用MQTT协议上传温度湿度数据...
- input子系统驱动学习之中的一个
- 122. PHP 性能问题(3)
- JavaScript编程用法——JavaScript运行环境
- Qt PDF预览功能实现汇总
- 这些年用过的iOS测试框架
- C语音音乐旋律代码-网络神曲
- Java SE 常见逻辑思维题
- CodeForces 140C	New Year Snowmen (贪心+优先队列)
- 解析:学Java好还是HTML5好?
- 需求工程方法及技术汇总
- BeanUtils制作自定义的转换器