比の差の分散分析
岩原信九郎「新訂版:教育と心理のための推計学」(1965、23.2節)において、比の差の分散分析法が2要因の場合について以下のように説明されている。
要因Aの水準()、要因Bの水準()において個のサンプルが採られ、その中で個のものが設定されているカテゴリに該当していたとする。このとき、条件におけるカテゴリの生起率(比)はとなる。このを逆正弦変換(角変換)した値の差を分散分析法によって検定する。
この説明に基づいて1要因、2要因、3要因の場合の比の差の分散分析用プログラム(Visual C++/CLR)を作成した。プログラムの使い方と理論的背景の説明は、pdfファイルの説明文書を用意した。ここをクリックするとダウンロードできる。1要因用のプログラムanovap1FctrVCpp、2要因用のプログラムanovap2FctrsVCpp、3要因用のプログラムanovap3FctrsVCppを用意したが、.NET対応の実行形式のものanovap1FctrVCpp.exe、anovap2FctrsVCpp.exe、anovap3FctrsVCpp.exeは、それぞれのファイル名をクリックしてダウンロードできるので、これらは.NET Framework3.5がインストールされているPCであれば、ダウンロードしたファイルを直接実行することができる。プログラムのソースコードなどは、圧縮ファイルanovap1FctrVCpp.ZIP、anovap2FctrsVCpp.ZIP、anovap3FctrsVCpp.ZIPにまとめたので、それぞれのファイル名をクリックしてダウンロードしたものを解凍すると、Visual Studioなどから開くことできる。
データは、セルごとに総度数n中の当該度数fの比の形「n/f」で書かれたテキストファイルから読み込まれるが、このスラッシュ/での区切りに対応するために以下のコードを用いている。
array<wchar_t>
^ separator = { ' ', '\t', ',',' ','/'
};
array<String ^> ^ ary_str;
ary_str = str->Split( separator );
seperatorの要素として設定されている文字でstrに設定された文字列が分割され、ary_strに設定される。詳しくは、ダウンロードしたファイルを参照されたい。
個のうち個が該当するという形式のデータは、ロジスティック回帰分析でも分析できるが、ロジスティック回帰分析とプログラムについては、ウェブサイト<ロジスティック回帰分析>で説明している。
ロジスティック回帰分析による分析例を以下に示す。
表1のデータについて説明する。
表1 比率の2要因分散分析データ例:「Yesの頻度/Noの頻度」の形式で表す。 |
||
|
A1 |
A2 |
B1 |
20/30 |
10/40 |
B2 |
25/25 |
5/45 |
ロジスティック回帰モデルを次式で設定する。
は主効果A、は主効果B、は交互作用ABを表す係数である。ダミー変数を用いた分散分析デザインの表し方については<岡本安晴「データ分析のための統計学入門」おうふう、pp. 130-133>で簡単に説明している。
上記ウェブサイト<ロジスティック回帰分析>のプログラムによる分析結果は以下のようになる。
=================================================
Y_P -> Yes
Y_N -> No
X[0] -> Const
X[1] -> A
X[2] -> B
X[3] -> AB
n = 4
Data...
Y_P
Y_N
X[0]
X[1]
X[2]
X[3]
1:
20 30
1
0
0
0
2:
10 40
1
1
0
0
3:
25 25
1
0
1
0
4:
5 45
1
1
1
1
b[0] ->
-0.41381/mean -0.41036/median 95% HPD Interval:[-0.98403,
0.16144] P(v <= 0.0) =
0.92442
b[1] ->
-1.01086/mean -1.00481/median 95% HPD
Interval:[-1.93418, -0.10984]
P(v <= 0.0) = 0.98680
b[2] ->
0.41465/mean 0.41412/median 95% HPD
Interval:[-0.38148, 1.21987]
P(v <= 0.0) = 0.15474
b[3] -> -1.27930/mean -1.26839/median 95% HPD Interval:[-2.73216, 0.15396] P(v <= 0.0) = 0.96177
=================================================
有意水準5%で考えたとき、主効果Aが有意で、主効果Bは有意ではない。交互作用ABは有意ではないが傾向はみられる(片側検定では有意である)。
同じデータを本ウェブサイトのプログラムanovap2FctrsVCpp.exeにより分析すると次の結果を得る。
==================================================
B-1
A-1
A-2
20
10
50
50
0.40000
0.20000
39.23152 26.56505
B-2
A-1
A-2
25
5
50
50
0.50000
0.10000
45.00000 18.43495
N
= 50.00
Within-cell
variance = 16.420
Source
SS
df
Chi-Sqr
p
A
384.77805
1
23.43350
0.00000
B
1.39432
1
0.08492
0.77074
AB
48.29264 1
2.94109
0.08635
Total
434.46501
3
26.45950
0.00001
within
cells
infinity 16.420
===================================================
ロジスティック回帰分析に対応する結果である。
なお、Visual C++プログラミングの解説を<岡本安晴「大学生のための心理学VC++プログラミング入門」勁草書房>で行っている。