欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第十一章 方差分析

程序员文章站 2022-07-12 17:55:10
...
	为了使生产过程稳定,达到优质、高产,需要对影响产品质量的因素进行分析,找出有显著影响的那些因素,除了从机理方面进行研究外,常常要作许多试验,对结果作分析、比较,寻求规律。用数理统计分析试验结果、鉴别各因素对结果影响程度的方法称为方差分析(Analysis Of Variance),记作 ANOVA。
	人们关心的试验结果称为指标,试验中需要考察、可以控制的条件称为因素或因子,因素所处的状态称为水平。上面提到的灯泡寿命问题是单因素试验,小麦产量问题是双因素试验。处理这些试验结果的统计方法就称为单因素方差分析和双因素方差分析。

1 单因素方差分析

	只考虑一个因素 A 对所关心的指标的影响, A 取几个水平,在每个水平上作若干个试验,试验过程中除 A 外其它影响指标的因素都保持不变(只有随机因素存在),我们的任务是从试验结果推断,因素 A 对指标有无显著影响,即当 A 取不同水平时指标有无显著差别。
	A 取某个水平下的指标视为随机变量,判断 A 取不同水平时指标有无显著差别,相当于检验若干总体的均值是否相等。

1.1 数学模型

第十一章 方差分析
第十一章 方差分析

1.2 统计分析

第十一章 方差分析
第十一章 方差分析

1.3 方差分析表

第十一章 方差分析
方差分析一般用的显著性水平是:取α = 0.01,拒绝 H0 ,称因素 A 的影响(或 A各水平的差异)非常显著;取α = 0.01,不拒绝 H0 ,但取α = 0.05 ,拒绝 H0 ,称因素 A 的影响显著;取α = 0.05 ,不拒绝 H0 ,称因素 A 无显著影响。

1.4 Matlab 实现

	Matlab 统计工具箱中单因素方差分析的命令是 anoval。 
	若各组数据个数相等,称为均衡数据。若各组数据个数不等,称非均衡数据。

(1)均衡数据
处理均衡数据的用法为:p=anoval(x)
返回值 p 是一个概率,当 p > α 时接受 H0 ,x 为m× r 的数据矩阵,x 的每一列是一个水平的数据(这里各个水平上的样本容量 ni = m )。另外,还输出一个方差表和一个Box 图。
例 1 为考察 5 名工人的劳动生产率是否相同,记录了每人 4 天的产量,并算出其平均值,如表 3。你能从这些数据推断出他们的生产率有无显著差别吗?
第十一章 方差分析
解 编写程序如下:
x=[256 254 250 248 236
242 330 277 280 252
280 290 230 305 220
298 295 302 289 252];
p=anova1(x)
求得 p = 0.1109 >α = 0.05,故接受 H0 ,即 5 名工人的生产率没有显著差异。方差表对应于上面的单因素方差分析表的1 ~ 4 列,F = 2.262 是 F(4,15) 分布的1− p 分位数,可以验证
fcdf(2.262,4,15)=0.8891=1-p
Box 图反映了各组数据的特征。
注:接受 H0 ,是将 5 名工人的生产率作为一个整体进行假设检验的结果,并不表明取其中 2 个工人的生产率作两总体的均值检验时,也一定接受均值相等的假设。实际上,读者可以用 ttest2 对本题作 0 2 5 H : μ = μ 的检验,看看会得到什么结果。
(2)非均衡数据
处理非均衡数据的用法为:
p=anova1(x,group)
x 为向量,从第 1 组到第 r 组数据依次排列;group 为与 x 同长度的向量,标志 x 中数据的组别(在与 x 第i 组数据相对应的位置处输入整数i(i = 1,2,L,r))。
第十一章 方差分析
解 编写程序如下:
x=[1620 1580 1460 1500
1670 1600 1540 1550
1700 1640 1620 1610
1750 1720 1680 1800];
x=[x(1:4),x(16),x(5:8),x(9:11),x(12:15)];
g=[ones(1,5),2ones(1,4),3ones(1,3),4*ones(1,4)];
p=anova1(x,g)
求得 0.01<p=0.0331<0.05,所以几种工艺制成的灯泡寿命有显著差异。

1.5 多重比较

在灯泡寿命问题中,为了确定哪几种工艺制成的灯泡寿命有显著差异,我们先算出
各组数据的均值:
第十一章 方差分析
虽然 A1 的均值最大,但要判断它与其它几种有显著差异,还需做多重比较。一般
多重比较要对所有 r 个总体作两两对比,分析相互间的差异。根据问题的具体情况可以
减少对比次数。
对于上述问题,Matlab 多重比较的程序为
x=[1620 1580 1460 1500
1670 1600 1540 1550
1700 1640 1620 1610
1750 1720 1680 1800];
x=[x(1:4),x(16),x(5:8),x(9:11),x(12:15)];
g=[ones(1,5),2ones(1,4),3ones(1,3),4*ones(1,4)];
[p,t,st]=anova1(x,g)
[c,m,h,nms] = multcompare(st);
[nms num2cell(m)]

2 双因素方差分析

	如果要考虑两个因素 A,B 对指标的影响, A,B 各划分几个水平,对每一个水平组合作若干次试验,对所得数据进行方差分析,检验两因素是否分别对指标有显著影响,或者还要进一步检验两因素是否对指标有显著的交互影响。

2.1 数学模型

第十一章 方差分析
第十一章 方差分析

2.2 无交互影响的双因素方差分析

第十一章 方差分析
第十一章 方差分析
第十一章 方差分析

2.3 关于交互效应的双因素方差分析

第十一章 方差分析

2.4 Matlab 实现

	统计工具箱中用 anova2 作双因素方差分析。命令为 
	p=anova2(x,reps) 
	其中 x 不同列的数据表示单一因素的变化情况,不同行中的数据表示另一因素的变化情况。如果每种行—列对(“单元”)有不止一个的观测值,则用参数 reps 来表明每个“单元”多个观测值的不同标号,即 reps 给出重复试验的次数t 。下面的矩阵中,列因素有 3 种水平,行因素有两种水平,但每组水平有两组样本,相应地用下标来标识:

第十一章 方差分析
例 3 一种火箭使用了四种燃料、三种推进器,进行射程试验,对于每种燃料与每种推进器的组合作一次试验,得到试验数据如表 8。问各种燃料之间及各种推进器之间有无显著差异?
第十一章 方差分析
第十一章 方差分析
x=[58.2 56.2 65.3
49.1 54.1 51.6
60.1 70.9 39.2
75.8 58.2 48.7];
[p,t,st]=anova2(x)
求得p=0.4491 0.7387,表明各种燃料和各种推进器之间的差异对于火箭射程无显著影响。
例 4 一火箭使用了 4 种燃料,3 种推进器作射程试验,每种燃料与每种推进器的组合各发射火箭 2 次,得到如表 9 结果。
第十一章 方差分析
解 编写程序如下:
clc,clear
x0=[58.2,52.6 56.2,41.2 65.3,60.8
49.1,42.8 54.1,50.5 51.6,48.4
60.1,58.3 70.9,73.2 39.2,40.7
75.8,71.5 58.2,51.0 48.7,41.4];
x1=x0(:,1:2:5);x2=x0(:,2:2:6);
for i=1:4
x(2i-1,:)=x1(i,:);
x(2
i,:)=x2(i,:);
end
[p,t,st]=anova2(x,2)
求得 p=0.0035 0.0260 0.0001,表明各试验均值相等的概率都为小概率,故可拒绝均值相等假设。即认为不同燃料(因素 A )、不同推进器(因素 B )下的射程有显著差异,交互作用也是显著的。
数据非均衡的双因素方差分析的 Matlab 命令要使用多因素方差分析的命令anovan,具体使用方法参见下面的例 5。

3 正交试验设计与方差分析

前面介绍了一个或两个因素的试验,由于因素较少,我们可以对不同因素的所有可
能的水平组合做试验,这叫做全面试验。当因素较多时,虽然理论上仍可采用前面的方
法进行全面试验后再做相应的方差分析,但是在实际中有时会遇到试验次数太多的问
题。如三因素四水平的问题,所有不同水平的组合有 3 4 =64 种,在每一种组合下只进
行一次试验,也需做 64 次。如果考虑更多的因素及水平,则全面试验的次数可能会大
得惊人。因此在实际应用中,对于多因素做全面试验是不现实的。于是我们考虑是否可
以选择其中一部分组合进行试验,这就要用到试验设计方法选择合理的试验方案,使得
试验次数不多,但也能得到比较满意的结果。

3.1 用正交表安排试验

第十一章 方差分析
第十一章 方差分析
解 我们这里不作统计分析,直接利用 Matlab 多因素方差分析的函数 anovan 进行
求解,程序如下:
y=[31 54 38 53 49 42 57 62 64];
g1=[1 2 3 1 2 3 1 2 3];
g2=[1 1 1 2 2 2 3 3 3];
g3=[2 1 3 1 3 2 3 2 1];
[p,t,st]=anovan(y,{g1,g2,g3})
求得概率 p= 0.1364 0.0283 0.0714,可见因素 B、C 的各水平对指标值的影响有显著差异(显著性水平取 0.1),而因素 A 的各水平对指标值的影响无显著差异。

相关标签: 建模