我们已经作过两个总体均值的假设检验,如两台机床生产的零件尺寸是否相等,病 人和正常人的某个生理指标是否一样。如果把这类问题推广一下,要检验两个以上总体 的均值彼此是否相等,仍然用以前介绍的方法是很难做到的。而你在实际生产和生活中 可以举出许多这样的问题:从用几种不同工艺制成的灯泡中,各抽取了若干个测量其寿 命,要推断这几种工艺制成的灯泡寿命是否有显著差异;用几种化肥和几个小麦品种在 若干块试验田里种植小麦,要推断不同的化肥和品种对产量有无显著影响。 4 O( r0 J- W$ i$ e% w5 Z6 F m
可以看到,为了使生产过程稳定,达到优质、高产,需要对影响产品质量的因素进行分析,找出有显著影响的那些因素,除了从机理方面进行研究外,常常要作许多试验, 对结果作分析、比较,寻求规律。用数理统计分析试验结果、鉴别各因素对结果影响程 度的方法称为方差分析(Analysis Of Variance),记作 ANOVA。 人们关心的试验结果称为指标,试验中需要考察、可以控制的条件称为因素或因子, 因素所处的状态称为水平。上面提到的灯泡寿命问题是单因素试验,小麦产量问题是双因素试验。处理这些试验结果的统计方法就称为单因素方差分析和双因素方差分析。 $ U+ i" P9 o; S; x' Y
- k% A$ z- z) q2 E
1 单因素方差分析 5 q9 M0 @2 \2 c6 t1 v
只考虑一个因素 A对所关心的指标的影响, A取几个水平,在每个水平上作若干 个试验,试验过程中除 A外其它影响指标的因素都保持不变(只有随机因素存在),我 们的任务是从试验结果推断,因素 A对指标有无显著影响,即当 A取不同水平时指标 有无显著差别。 A取某个水平下的指标视为随机变量,判断 A取不同水平时指标有无显著差别, 相当于检验若干总体的均值是否相等。/ U n; j# z4 l P6 ?
! \# @" h7 r6 y7 F1 s5 e+ g ?
1.1 数学模型 {0 _' x0 l3 G# i6 q/ Y
5 d r9 c0 w) }1 o: L, y8 u% e0 P% ^5 A4 }9 ]6 X: g* s |, W; \! I
, C. a; U# _6 F, N 7 V2 D. a; q0 y X# y+ z. t3 D % ^+ o; c/ `, {3 z5 W! ^1 X# q( n) g+ z1 A' _
0 y0 n0 ~/ P' Z/ V# n. W8 H
* s. ^1 T8 B9 z! P; O1.2 统计分析 8 \7 ]! b' i" P8 C7 r# m. `' k! [ 7 f. v) H8 s6 u% K2 ^ ' W/ P4 S3 ]$ C& x' a Y0 j( M* p5 U' m) m- J
1.3 单因素方差分析表0 m' ], Z$ j3 s, J' e2 L6 b2 x1 ^
将试验数据按上述分析、计算的结果排成表 2 的形式,称为单因素方差分析表 (Matlab 中给出的方差分析表)。 $ x/ s1 Z* N( X
0 h' ]7 N4 M' }* f& _, \ 0 X* ?1 N" d2 S) p; _ : B/ i0 O* d4 r# |因素 A有无显著影响?& e$ m' x# c0 J& Y- L5 Y9 H
+ ~7 B' u- l3 X. g5 l% c $ j! P5 Q( m3 v7 m$ o- ~, h* e + e( |- m8 B' z* D" ~( g( H 0 C6 ]" ]7 a' \; [1.4 Matlab 单因素方差分析函数anoval 0 b+ v" ^ U7 R$ h: JMatlab 统计工具箱中单因素方差分析的命令是 anoval。# m5 Z( m) a& ~
: f/ ?9 F2 C5 ^" T5 z% O; X
若各组数据个数相等,称为均衡数据。若各组数据个数不等,称非均衡数据。 . X K) A! v) i& y# j$ H" l. @3 g0 v* T( m, R( I8 j
(1)均衡数据% i8 h" F' q6 F7 n. Z
* c' c! Z$ K, e% ^" E" C# f处理均衡数据的用法为: 7 L: l$ s' J: c9 _! }$ I6 g1 K2 C. t3 r9 V' B$ Q' V
p=anoval(x) ; q9 q4 v! t, ]- U! X% W# Z
3 d1 E* s- x: y7 Z5 ]2 ]4 r0 l" W$ \ 8 `/ `( p0 o1 I, [( l& S! I) b$ q, g% {
: ^9 X4 Z( Q2 S% o, \$ K/ ^! e
0 V% L' B! Q* X; s% Z5 c2 q$ H
解 编写程序如下: , Q* Y2 ` F( t( }: c, N
2 h- \; Q% r5 kx=[256 254 250 248 236 / Y) l" M0 r& v+ Z* J7 E
242 330 277 280 252 . }( I# t- e/ n3 B 280 290 230 305 220 $ |+ a8 x! X- B+ f
298 295 302 289 252]; / w1 u7 G- C0 t7 E5 }p=anova1(x) 9 { _8 o' l/ M: N6 r4 b9 C
% R/ r+ Y. `) G @. z I / |# O, ^* \+ {. k! H
% E% n: ]( x5 }3 o9 G5 t* n
(2)非均衡数据
处理非均衡数据的用法为:
) Q7 l! k2 a: _* y
p=anova1(x,group) 8 H* n* ~0 U1 c- ~* f6 [( H$ F% c. w8 G8 _% _; N
* \) N$ d e! ?6 q. a% F+ T9 b
2 }, k% I7 x9 i4 u& a, Z0 R. L , u: X( F1 f, |# w8 c: O 4 I% i, f' X( h! u+ H例2 用4种工艺生产灯泡,从各种工艺制成的灯泡中各抽出了若干个测量其寿命, 结果如下表,试推断这几种工艺制成的灯泡寿命是否有显著差异。 W1 ]4 N' ^9 B6 U) W% e. a) v o0 u4 R) T / d2 G) F' B4 G2 H! ~' A/ j2 v/ @. F% `+ X8 J, k E k2 b7 R
解 编写程序如下: 0 \9 {( g% E1 [# b2 `! C G
6 @9 f4 q8 R7 p0 y) C$ k% E
x=[1620 1580 1460 1500 8 P% p5 H3 p8 u: l I
1670 1600 1540 1550 ' x6 A; u7 r/ @* U' q 1700 1640 1620 1610 3 [. v2 S1 ]/ R! f 1750 1720 1680 1800]; - h: b+ w! {5 K4 q v M! K/ L
x=[x(1:4),x(16),x(5:8),x(9:11),x(12:15)]; ( G, D( t) @% J/ R' l9 Q
g=[ones(1,5),2*ones(1,4),3*ones(1,3),4*ones(1,4)]; - \& Q- s; i, v$ c c5 i
p=anova1(x,g) 0 b0 D& b$ T% U7 m. ?9 C$ U6 h8 W( ^7 y, k
求得 0.01<p=0.0331<0.05,所以几种工艺制成的灯泡寿命有显著差异。 + a( o3 z+ N9 v. |
* Q- d' s/ g$ R) {8 V1.5 多重比较, I$ v( c! ?: E" A) T H! a; Z2 r
在灯泡寿命问题中,为了确定哪几种工艺制成的灯泡寿命有显著差异,我们先算出 各组数据的均值: # l* u5 v& \! N: y, F4 K : G& x; C Z* R. |* \# s/ \; i/ a. t( t$ T
) a( B( v. O; ^8 A虽然 的均值大,但要判断它与其它几种有显著差异,还需做多重比较。一般多重比较要对所有r 个总体作两两对比,分析相互间的差异。根据问题的具体情况可以 减少对比次数。# S' O& _. L( l, Z2 R
, m! T _$ M) g S/ s
对于上述问题,Matlab 多重比较的程序为 : U0 D E0 {" r $ ]& U; f5 H; J1 H( H9 g! Nx=[1620 1580 1460 1500 0 f; s i7 _2 n y 1670 1600 1540 1550 . e6 W7 z1 i. x% Z; A
1700 1640 1620 1610 " t- A/ z. I7 i/ k% |8 ?2 _
1750 1720 1680 1800]; ! g5 S8 d. e% G' Ox=[x(1:4),x(16),x(5:8),x(9:11),x(12:15)]; ( Y+ b K- n9 u3 o( z, f; }g=[ones(1,5),2*ones(1,4),3*ones(1,3),4*ones(1,4)]; # [+ D4 u L, R% Z: o
[p,t,st]=anova1(x,g) [c,m,h,nms] = multcompare(st); 2 ?' H7 e' U. J f: C
[nms num2cell(m)] 8 r0 j& [% f- \8 f# h/ w4 B4 X" _
2 双因素方差分析 " w& ?( O) ?* b) `
如果要考虑两个因素 A, B 对指标的影响, A, B 各划分几个水平,对每一个水平组 合作若干次试验,对所得数据进行方差分析,检验两因素是否分别对指标有显著影响, 或者还要进一步检验两因素是否对指标有显著的交互影响。 0 @7 q" P, C( O % S1 ^8 d! B5 J3 O, S& X( f2.1 数学模型 ) d# m" F7 p2 s9 l. W
+ z# H, P! Q& O6 b: n7 T/ m* I3 p 5 {0 e: ?3 e/ |/ i, s" s * g" S- y& _% E9 b3 A- g2 I6 c5 @# p, p9 Y% w( i9 S , j: U; y$ a7 N1 `" |, q8 F- \) ] . X* K( K" {. w/ H9 y 6 B z* v2 A1 w' _5 q! x4 X8 |. B) T% j$ p* s/ V: P z1 F
2.2 无交互影响的双因素方差分析 9 U* U! h( M: |/ B5 P, Q0 \4 h如果根据经验或某种分析能够事先判定两因素之间没有交互影响,每组试验就不必重复,即可令 t =1 ,过程大为简化。 ) r1 x/ V2 ~8 q6 Y5 w
; ]0 U& r- k ?: @; j% M% x1 ]总平方和分解 3 V( z$ P5 g) v5 \+ ~3 D5 y& e
8 I! [$ {/ O! v8 D# l# e2 X 4 T5 m7 F W4 q; Q; ^( @2 h( M6 `8 P! Q1 @, w q
8 P) m8 Y% N, M3 n# O% q8 p各平方和的统计意义 9 T4 W7 H( \+ }, C+ w' Y8 X / Z2 w. L& s* Q( Z$ J3 }7 i4 ~* B; S( i2 d. b
4 r" t3 m! I4 H) G
+ D6 u3 z+ J, l4 I& f6 a' p. Y2 n0 U
无交互效应的两因素方差分析表 ' ^# n( |, v2 T8 m6 j/ D& v1 f' g+ u' i: _7 I7 r * C+ e4 o4 {1 w* b1 |9 i2.3 关于交互效应的双因素方差分析 1 E7 @1 n, l5 M, G: {7 Y / E6 G# Z& p; N6 i8 ^' F" q 5 q! J9 b1 V: X; a" ~# [6 |8 J" r2 ^/ l/ ^( u+ g$ x+ C
8 N b6 y6 W( \检验因子 A和B 的各个水平的效应是否有差异,与 2.2 中的检验是一样的。 1 @. v8 L$ h/ [9 w/ g6 g5 |- Q4 _/ M8 s# l. V
将试验数据按上述分析、计算的结果排成表 7 的形式,称为双因素方差分析表。 * [! ^/ o5 Q7 p