前言
由于方差分析的原理基本在所有概率论与数理统计的书中都可以找到,那么这里就直接以图片的形式呈现了。关于方差齐次性检验以后会补充。知识基础:假设检验。(今天刚刚学了数据结构,发现自己以前写的数组的基础操作水平极低,真是惭愧)
简介
方差分析(Analysis of Variance,简称ANOVA),又称“变异数分析”,是R.A.Fisher发明的,用于两个及两个以上样本均数差别的显著性检验。 由于各种因素的影响,研究所得的数据呈现波动状。造成波动的原因可分成两类,一是不可控的随机因素,另一是研究中施加的对结果形成影响的可控因素。(百度百科)简单来说就是看看不同因素对于样本的总体均值影响。
原理
- 单因素实验的方差分析:



(里面有一个地方写错了,应该是F分布的α分位点, 而不是(1-α)分位点。因为如果原假设不成立,那么组间的影响就会比较大,也就是SA比较大,对应F也就较大,而α对应的是落入拒绝域的概率,即P(F>threshold)=α,即threshold等于F的α分位点)
- 双因素的方差分析





(同样的,这里的分位点应该是α)
代码实现
- 注意事项
从原理中我们可以看到方差分析的假设是各因素水平对应的样本要服从同方差的正态分布,因此我们有必要做正态拟合度检验和方差齐次检验!(数据量比较大的时候采用,数据量少的时候没有必要)
%初始化数据:这里我们设置的数据是单因素5个水平下的五组标准
%正态分布的数据,以确保数据能通过检验
for i=1:5
x(i,:)=randn(1,5);
end
%正态性检验(卡方检验)
for i=1:5
[h,p]=lillietest(x(i,:));
judge(i)=p;%这里算出来的p是χ^2对应的p分位点,因此当p>0.05时,χ^2落入
%接受域,原假设成立,可以看作正态分布
end
judge
%方差齐次检验
X=reshape(x',size(x,1)*size(x,2),1);%注意形式,将x按行展开
%数据对应的因素水平序号
ind=[ones(1,5)

本文深入讲解方差分析(ANOVA)的基本概念、原理及其在单因素和多因素实验中的应用。探讨了正态性检验、方差齐次检验的重要性,并通过MATLAB代码演示了方差分析的具体实施过程。
最低0.47元/天 解锁文章
667

被折叠的 条评论
为什么被折叠?



