二元配置の分散分析
二元配置の分散分析については対応ありのデータに適用できる乱塊法と繰り返し観測のある場合の二元配置分散分析の2種類を紹介します。
Contents
-------------
・乱塊法
―例題1-1
―例題1-2
・繰り返し観測のある場合
―例題2-1(観測度数が等しい場合)
―例題2-2(観測度数が等しくない場合)
T 乱塊法(対応ありデータに適用)
一元配置の分散分析では3群以上の平均値の差を確かめてみました。このマスの例では,観測地によってそれぞれ異なるマスの体長を測ったのですから独立なデータということになります。これから紹介する乱塊法は対応のあるデータに対して適用できる分散分析です。
5種類の猫に対して4種類の猫缶(猫用の缶詰)を与えて次表のような体重増加のデータが得られた。このデータを基に@猫の種類に関係があるか,A猫缶の種類に関係があるか,ということを検定してみる。

解 説
二元配置の分散分析では行効果と列効果というものがあります。行効果とは猫の種類が猫の体重に関係しているかどうか,列効果とは缶詰の種類が体重に関係しているかどうかを示しています。つまり猫の種類が体重増加に関係しているのであれば行効果が認められるといい,一方で缶詰の種類が関係していれば列効果が認められるというわけです。
したがって,帰無仮説は行効果についての仮説と列効果についての仮説との2つを考える必要があります。
(行効果についての)帰無仮説H01:猫の体重増加に猫の種類は関係していない(つまり個体差はない)
(列効果についての)帰無仮説H02:猫の体重増加に缶詰の種類は関係していない(つまり処置によって差は生じない)
> data
[,1] [,2] [,3] [,4]
[1,] 14.0 15.5 18.5 17.0
[2,] 18.0 13.5 16.0 16.5
[3,] 14.5 12.0 11.5 10.0
[4,] 16.5 14.5 17.5 13.5
[5,] 11.0 12.5 13.5 13.0
> randblk(data)
SS d.f. MS F value P value
Treatment 9.75 3 3.250000 1.083333 0.393241396
Replication 66.20 4 16.550000 5.516667 0.009334848
Residual 36.00 12 3.000000 NA NA
Total 111.95 19 5.892105 NA NA
上の結果を分かり易く表にまとめると次のようになります。
| 平方和 | 自由度 | 平均平方和 | F値 | |
| 缶詰の種類(列効果) | 9.75 | 3 | 3.25 | 1.0833 |
| 猫の種類(行効果) | 66.20 | 4 | 16.55 | 5.5166 |
| 誤差 | 36.00 | 12 | 3.00 | |
| 総 | 111.95 | 19 | 5.89 |
仮説H01についてはF=5.5166>F412,0.05=3.26なので帰無仮説を棄却することができる。すなわち,行効果が認められ,体重増加に猫の種類が関係しているようである。また仮説H02についてはF=1.0833<F312,0.05=3.49なので帰無仮説を棄却することはできない。すなわち,列効果は認められず体重増加に缶詰は関係していないようである。
以上のことから,猫の体重増加には猫の種類が関係しているのであって缶詰の種類は関係していない。ということがいえる。
ある3種類の睡眠薬を5人の被験者に経口投与し,ベットに入ってから睡眠に至るまでの時間を測ってみた。睡眠薬によって睡眠に至るまでの時間に違いがあるといえるだろうか。
| A薬 | B薬 | C薬 | |
| 被験者1 | 10.4 | 4.7 | 7.8 |
| 被験者2 | 9.5 | 6.6 | 10 |
| 被験者3 | 11 | 5.1 | 9.3 |
| 被験者4 | 9.3 | 7 | 4.7 |
| 被験者5 | 8.5 | 5.6 | 5.5 |
解 説
例題1-1と同様に列効果に関する仮説H01と行効果に関する仮説H02を次のように立てます。
H01:睡眠に至るまでの時間に睡眠薬の種類は関係ない(つまり処置によって差は生じない)
H02:睡眠に至るまでの時間は被験者によって変化しない(つまり個体差はない)
> dat
[,1] [,2] [,3]
[1,] 10.4 4.7 7.8
[2,] 9.5 6.6 10.0
[3,] 11.0 5.1 9.3
[4,] 9.3 7.0 4.7
[5,] 8.5 5.6 5.5
> randblk(dat)
SS d.f. MS F value P value
Treatment 39.12933 2 19.564667 8.356207 0.01098245
Replication 10.31333 4 2.578333 1.101224 0.41866789
Residual 18.73067 8 2.341333 NA NA
Total 68.17333 14 4.869524 NA NA
| 平方和 | 自由度 | 平均平方和 | F値 | |
| 睡眠薬の種類(列効果) | 39.12 | 2 | 19.56 | 8.3562 |
| 被験者(行効果) | 10.31 | 4 | 2.57 | 1.1012 |
| 誤差 | 18.73 | 8 | 2.34 | |
| 総 | 68.17 | 14 | 4.86 |
仮説H01についてはF=8.3562>F28,0.05=4.46なので帰無仮説を棄却する。すなわち,睡眠薬の種類によって睡眠に至るまでの時間が異なるようである。また仮説H02についてはF=1.1012<F48,0.05=3.84なので帰無仮説を棄却することはできない。すなわち,睡眠に至るまでの時間は被験者自体とは関係がないようである。
以上のことから,3種類の睡眠薬によって睡眠に至るまでの時間は変化するようであるが,被験者自体には睡眠に至るまでの時間に関係していないようである。
なお上の2つの例題で用いた関数randblk()についてはRで分散分析のページを参考にしてください。
U 繰り返し観測のある場合
繰り返し観測のある場合の二元配置分散分析では,乱塊法においての行効果と列効果に加えて交互作用効果というものがあります。したがって,この場合は行効果に関する帰無仮説Hr0と列効果に関するHc0,交互作用効果に関するHrc0の3つの仮説について検証する必要があります。
また繰り返し観測の数が等しい場合と等しくない場合とで計算の仕方が異なります。
例 題2-1(繰り返し観測の数が等しい場合)
ある高校には英語の先生が3人いて,週に3回ある英語の授業でそれぞれ異なる先生が授業を担当している。しかしある先生がいうには先生によって生徒たちの授業態度が異なると主張した。またある先生は学年によって随分と授業態度が違うのではないかと主張している。
そこで各学年と授業を担当する先生において生徒たちの授業態度が異なるかどうかを調べてみたところ下のような結果が得られた(データは授業中に先生が生徒たちに注意をした回数)。

解 説
まず表の見方を説明しましょう。1年生と先生Aが直交する部分のデータは10,6,8となっていますがこれは1年生のクラスかつ先生Aの授業において,先生が生徒たちを注意する回数を3回繰り返して観測したということです。つまり,1回目に観測したときは10回の注意を受けており,2回目には6回,そして3回目には8回の注意を受けているということになります。
次に帰無仮説を次のように立てます。
(行効果に関する)帰無仮説Hr0:先生が生徒に注意をする回数に学年は関係ない
(列効果に関する)帰無仮説Hc0:先生が生徒に注意をする回数に先生は関係ない
(交互作用効果に関する)帰無仮説Hrc0:行効果と列効果の交互作用効果はない
ここで実際にRを使用して分散分析表を作成しますが,最初から実装されているaov()を用いるよりもtwoway.anova()を用いた方が簡単です。これについてはRで分散分析のページを参考にしてください。
> dat
[,1] [,2] [,3]
[1,] 1 1 10
[2,] 1 1 6
[3,] 1 1 8
[4,] 1 2 0
[5,] 1 2 2
[6,] 1 2 1
[7,] 1 3 20
[8,] 1 3 27
[9,] 1 3 19
[10,] 2 1 12
[11,] 2 1 15
[12,] 2 1 11
[13,] 2 2 6
[14,] 2 2 7
[15,] 2 2 5
[16,] 2 3 43
[17,] 2 3 39
[18,] 2 3 25
[19,] 3 1 5
[20,] 3 1 6
[21,] 3 1 6
[22,] 3 2 0
[23,] 3 2 0
[24,] 3 2 2
[25,] 3 3 12
[26,] 3 3 10
[27,] 3 3 16
> twoway.anova(dat)
$Model1
SS d.f. MS F value P value
A 645.6296 2 322.81481 22.40617 1.303310e-05
B 2070.5185 2 1035.25926 71.85604 2.622831e-09
A*B 287.0370 4 71.75926 4.98072 7.004174e-03
e 259.3333 18 14.40741 NA NA
T 3262.5185 26 125.48148 NA NA
$Model2
SS d.f. MS F value P value
A 645.6296 2 322.81481 4.498581 0.094715916
B 2070.5185 2 1035.25926 14.426839 0.014823543
A*B 287.0370 4 71.75926 4.980720 0.007004174
e 259.3333 18 14.40741 NA NA
T 3262.5185 26 125.48148 NA NA
まず結果の見方ですが$Model1は母数モデル,$Model2は変量モデルです。母数モデルとはその実験でのみ有効な結果であるのに対して,変量モデルは実験以外にも"そうである"と一般的にいうことができるものです。だから母数モデルよりも変量モデルの方がp値が小さめに出ています(つまり変量モデルの方が仮説を棄却できにくいということです)。
今回は母数モデルの結果をみてみましょう。
| 平方和 | 自由度 | 平均平方和 | F値 | |
| 要因A(学年-行効果) | 645.62 | 2 | 22.40 | 22.40 |
| 要因B(先生-列効果) | 2070.51 | 2 | 71.85 | 71.85 |
| 交互作用効果 | 287.03 | 4 | 4.98 | 4.98 |
| 誤差 | 259.33 | 18 | ||
| 総 | 3262.51 | 26 |
行効果・・・F=22.40>F218,0.05=3.55
列効果・・・F=71.85>F218,0.05=3.55
交互作用効果・・・F=4.98>F418,0.05=2.93
以上の結果からそれぞれの帰無仮説Hr0,Hc0,Hrc0すべて棄却できます。したがって,学年間にも先生間にも有意差があり,交互作用効果も存在する。すなわち,生徒たちの授業態度は学年によっても担当教員によっても異なり,また交互作用効果も認められる。
ここで交互作用について少し補足しておきましょう。例えば2年生のクラスはものすごい不良クラスであり,先生Bは非常に指導力が欠けているとします。この場合,悪い学年という効果と悪い先生という効果が絡み合ってものすごくマイナスに影響してしまいます。このようにある要因Aとある要因Bとが絡み合って影響する力のことを交互作用効果というのです。
例 題2-2(繰り返し観測の数が等しくない場合)
繰り返し観測の数が等しくない場合でも実際にはコンピュータで計算をするので理屈というか考え方は繰り返しの観測数が等しい場合と同じです。ただし自分で計算して見る場合,あるいはプログラムを組む場合は両者をしっかりと区別しないと計算方法が異なるので大変なことになります。
まぁ,実際に例データをみてみましょう。これはある3種類の状況を設定し,それぞれの状況において男性と女性の心拍数を計測したものです。このデータを基に@性別間に有意差があるか,A状況間に有意差があるか,性別と状況の間に交互作用効果が有意に存在するか,ということを検定してみます。

(行効果に関する)帰無仮説Hr0:性別間に有意差はない
(列効果に関する)帰無仮説Hc0:状況間に有意差はない
(交互作用効果に関する)帰無仮説Hrc0:性別と状況の間に交互作用効果は有意に存在しない
もう少し平たくして,性別は心拍数の増加に関係しない,状況によって心拍数が変わることはない,性別と状況の間に交互作用効果は認められない,などとしてもいいですね。
> dat
[,1] [,2] [,3]
[1,] 1 1 66
[2,] 1 1 60
[3,] 1 1 63
[4,] 1 1 62
[5,] 1 2 82
[6,] 1 2 79
[7,] 1 2 90
[8,] 1 3 110
[9,] 1 3 96
[10,] 1 3 103
[11,] 1 3 100
[12,] 2 1 60
[13,] 2 1 61
[14,] 2 2 66
[15,] 2 2 69
[16,] 2 2 71
[17,] 2 2 77
[18,] 2 3 119
[19,] 2 3 120
[20,] 2 3 99
> twoway.anova(dat)
SS d.f. MS F value P value
A 11.14714 1 11.14714 0.2922016 5.973087e-01
B 6906.14859 2 3453.07429 90.5159122 9.821049e-09
A*B 467.62667 2 233.81333 6.1289811 1.224811e-02
e 534.08333 14 38.14881 NA NA
T 7908.55000 19 416.23947 NA NA
今回の場合は母数モデルのみ出力されます。より分かり易く分散分析表にまとめてみると次のようになります。
| 平方和 | 自由度 | 平均平方和 | F値 | |
| 要因A(性別-行効果) | 11.14 | 1 | 11.14 | 0.2911 |
| 要因B(状況-列効果) | 6906.14 | 2 | 2453.07 | 90.5159 *** |
| 交互作用効果 | 467.62 | 2 | 233.81 | 6.1289 * |
| 誤差 | 534.08 | 14 | 38.14 | |
| 総 | 7908.55 | 19 | 416.23 |
ちょっとページを書くのが面倒にもなってきたので,有意差がみられたものにはF値の隣に*(アスタリスク)を付けておきました(*:p<0.05,***p<0.001)。
以上の結果から帰無仮説Hc0とHrc0を棄却します。したがって,性別間には有意差がなかったが状況間には有意差があったそして交互作用効果も認められた。すなわち,状況によって心拍数が変化するようであるが,性別は関係ないようである。また性別と状況による交互作用も認められた。
長い間お疲れ様でした。これで分散分析の説明は一通り終えたわけですが,分散分析には今回紹介したものの他に被験者間計画,被験者内計画,混合計画などがあります。詳しくは実験計画法に関連する書籍を当たってみるとよいでしょう。
ちなみに心理学の教本で有名どころの『心理学マニュアル 要因計画法』北大路書房という本には分散分析についての詳しく解説されていますが,個人的には非常に読みにくい本だと感じたのであまりおススメはできません。