方差分析(ANOVA)分类、应用举例及matlab代码
目录
一、介绍
1.1、定义
1.2、为什么使用方差分析?
1.3、方差分析的分类
1.3.1、按影响分析指标的因素个数
1.3.2、按分析指标的个数
1.3.3、多因素多分析指标
二、单因素一元方差分析(anova1)
2.1、问题
2.2 步骤
2.3 MATLAB代码
2.4 单因素方差分析的MATLAB全部代码
三、双因素一元方差分析(anova2)
3.1、问题
3.2 步骤
3.3 MATLAB代码
四、多因素一元方差分析(anovan)
4.1、问题
4.2 MATLAB代码
一、介绍
1.1、定义
方差分析是英国统计学家R.A.Fisher在20世纪20年代提出的一种统计方法,它有着非常广泛的应用。
方差分析(analysis of variance, ANOVA)是一种统计检验,用于检验两组或更多组样本的均值是否相同。
1.2、为什么使用方差分析?
t检验涉及一组或者两组样本的均值检验,而在三个或者更多组的均值比较中(例:检验脑电信号功率的平均值是否会因为记录时间(早上,上午和晚上)不同而不同),t检验并不是一种有效的统计检验工具,而且也可能导致结果出现偏差(如果反复使用t-检验,两两之间t检验,则会导致严重的第一类错误)。
方差分析能够在不增加第一类错误发生率的情况下测试几组样本均值之间是否存在差异。
1.3、方差分析的分类
1.3.1、按影响分析指标的因素个数
方差分析按影响分析指标的因素(也可简单成为 自变量)个数的多少,分为单因素方差分析(one-way ANOVA)、双因素方差分析、三因素方差分析 (两个或多个因素,称为多因素方差分析,multi-way ANOVA)。
在多因素方差分析中,把单个因素在不同水平下产生的不同实验结果成为主效应(main effect);把多个因素间在不同水平共同产生的实验结果差别称为交互效应(interaction effect)。
与配对样本t检验(paired-samples t-test)类似(例,睁眼条件下静息态脑电信号功率的均值与闭眼条件下脑电信号功率的均值是否有显著差异),如果方差分析中某一因素的不同水平的测量来自同一组被试,则检验称为重复测量的方差分析(repeated measures ANOVA),该因素(闭眼 or 睁眼)称为重复测量因素(repeated meausres factor)或者被试内因素(within-subjects factor)。
也类似于独立双样本t检验(independent two-samples t-test)(例:检验男性被试和女性被试在睁眼条件下静息态脑电信号功率的均值是否有显著差异),在方差分析中如果某个因素在不同水平的测试来自不同组的被试,则称该因素(男性 or 女性)为被试间因素(between-subjects factor)。
1.3.2、按分析指标的个数
方差分析按分析指标(也可简单称为 因变量)的个数多少,分为一元方差分析(即ANOVOA)、多元方差分析(即,MANOVOA)。
1.3.3、多因素多分析指标
多自变量多因变量的方差分析,可以简单称为多元方差分析,当然更精确的称为“X因素Y元方差分析”,如二因素二元方差分析。
二、单因素一元方差分析(anova1)
p = anova1(x)
研究一个控制变量的不同水平是否对观测变量产生了显著影响。
2.1、问题
检验不同时间记录(早晨,下午和晚上)的睁眼状态下的静息脑电信号平均功率的均值是否相同。
样本X满足方差分析的几个基本假定:所有样本均来自正态总体;这些正态总体具有相同的方差。
2.2 步骤
- 正态性检验
H0:不同时间所记录的睁眼状态下的静息脑电信号平均功率值服从正态分布;H1:不服从正态分布
- 方差齐次性检验
H0:不同时间所记录的睁眼状态下的静息脑电信号平均功率值服从方差相同的正态分布;H1:不服从方差相同的正态分布
- 方差分析
- 建立假设检验
- H0:不同时间所记录的睁眼状态下的静息脑电信号平均功率的均值是相同的。
H1:不同时间所记录的睁眼状态下的静息脑电信号平均功率的均值是不相同的,三个之中至少有两个不等。
- H0:不同时间所记录的睁眼状态下的静息脑电信号平均功率的均值是相同的。
- 统计F值
- 首先计算均值:第i个总体的样本均值和总均值,ni为第i个总体的样本观察值个数;然后计算误差平方和。
组间平方和SSA,各组平均值与总平均值的误差平方和,反映了各水平总体的样本均值之间的差异程度,表示因素A的各个水平理论平均值的不同带来的影响,记为“因素A的平方和”或“组间差异”;
组内平方和SSE,它是各组的各样本数据与其组平均值误差的平方和,反映了每个样本各观察值的离散状况,表示随机误差的影响,记为“误差平方和”或“组内差异”;
总误差平方和SST,它是全部观察值与总平均值的误差平方和,反映全部观察值的离散程度。
组间均方和组内均方分别由误差平方和除以各自的自由度得到。
MSA/MSE比值构成F分布。
- 首先计算均值:第i个总体的样本均值和总均值,ni为第i个总体的样本观察值个数;然后计算误差平方和。
- 确定p值并做出统计决策
- 计算出统计量F的值后,根据给定的显著性水平α, 在F分布表中查找分子自由度为(k-1)、分母自由度为n-k的相应临界值Fα。
- 建立假设检验
- 多重比较
- 若不同时间水平下的具有显著差异,但是也并不意味着任意两个时间水平下的脑电信号功率具有显著差异,因此还需要进行两两之间的比较检验,即多重比较,找出脑电信号功率存在显著差异的时间。
即便不同时间的脑电信号功率之间不具有显著差异,但在实际应用中,有两点还可以再考察以下:
各个水平理论平均值的点估计之间的差异如何,若这个差异没有大到有实际意义的程度,则加强了上述结论,即各个水平之间的差异即使存在,其实际意义也有限。
若不同水平之间均值的差异,从应用观点看,达到了比较重要的程度,则原假设H0之所以被接受,是由于随机误差的影响太大。误差方差
方差分析(ANOVA)分类、应用举例及matlab代码相关推荐
- t-检验(t-test)的应用举例及matlab代码
目录 一.单样本t检验(One-sample t-test) 1.目的: 2.要求: 3.应用举例: 4.假设: 5.MATLAB代码: 二.配对样本t检验(Paired-sample t-test) ...
- 拟牛顿法-DFP算法举例与matlab代码实现(转载+整理)
算法来自于[1],如下: 值得一提的是,[1]中的python代码实现了对Rosenbrock函数的求极值测试. 例子来自于[2]: --------------------------------- ...
- 基于深度学习LSTM分类进行故障检测(Matlab代码实现)
- 【预测模型-ELM分类】基于鲸鱼算法优化核极限学习机实现数据分类附matlab代码
1 内容介绍 极限学习机(extreme learning machine,ELM)作为一种新兴的机器学习方法,已经成为了一个热门的研究方向. ELM 随机确定单隐含层网络的输入权值和隐含层节点偏置, ...
- 故障诊断分类 matlab代码 轴承内圈、外圈、滚动体故障分类
故障诊断分类 matlab代码 轴承内圈.外圈.滚动体故障分类 (1)故障样本的时域.频域.时频域.熵等特征提取: (2)BP网络或者SVM模型训练与测试 (3)输出测试样本分类准确率 成套代码,注释 ...
- (论文加源码)基于时频域特征分析和SVM分类器的DEAP脑电信号情感状态识别(matlab代码)(四分类)
论文和源码见个人主页:https://download.csdn.net/download/qq_45874683/85069822 (论文加源码)(matlab代码)基于时频域特征分析和SVM分类器 ...
- 【数学建模】单、多因素试验的方差分析(Matlab代码实现)
目录 1 概述 2 单因素方差分析 2.1 语法 2.2 算例 1 2.2.1 算例 2.2.2 Matlab代码 2.2.3 结果 2.3 算例2 2.3.1 算例 2.3.2 Matlab代码 2 ...
- 【FNN分类】基于粒子群结合引力搜索算法优化前向反馈神经网络实现数据分类附matlab代码
1 内容介绍 引力搜索算法(GSA)是一种基于引力定律和质量相互作用的新型启发式优化方法.实践证明,该算法具有较好的全局最优搜索能力,但在最后一次迭代中存在搜索速度较慢的问题.这项工作提出了粒子群优化 ...
- matlab的灰色关联,灰色关联度Matlab代码
load x.txt %把原始数据存放在纯文本文件x.txt中,其中把数据的"替换替换成. for i=1:40 x(i,:)=x(i,:)/x(i,1); %标准化数据 end data= ...
最新文章
- php 7.1 寿命,PHP 7.1新特性
- 单独的plsql链接数据库
- 机器学习和计算机视觉有关的数学
- 操作系统(十三)处理机调度的概念、层次
- Python工程师学习笔记
- 气味识别应用_解决气味
- uva 11728——Alternate Task
- java进程和线程_Java™ 教程(进程和线程)
- java人体识别_用华为HMS ML kit人体骨骼识别技术,Android快速实现人体姿势动作抓拍...
- linux系统怎么删除打印机,解决LINUX ES3.0下想指定打印机和用户的删除打印作业的问题...
- 前端开发 2018 回顾
- 福利月|这个月你想要什么书
- 《Arduino实战》——2.5 小结
- 2017.07.16小组赛题目I
- 开发中常用正则表达式
- 微信小程序获取Appsecret报错40125“invalid appsecret”
- Java for循环的几种用法详解(转载)
- Couldn‘t resolve host
- go-pitaya学习笔记(9)-rate_limiting demo分析
- 小孟网站被黑客攻击,已经哭晕在厕所……
热门文章
- t-检验(t-test)的应用举例及matlab代码