2 因子 ANOVA
2 因子 ANOVA の紹介
関数 anova2
を使用して、平衡型の 2 因子分散分析 (ANOVA) を実行できます。不平衡な設計で 2 因子 ANOVA を実行するには、anovan
を使用します。たとえば、不平衡な設計の 2 因子 ANOVAを参照してください。
1 因子 ANOVA と同じように、2 因子 ANOVA では実験データも観測データも使用できます。2 因子 ANOVA は、1 つの応答変数に与える 2 つの因子の影響が関心の対象になるという点で、1 因子 ANOVA と異なります。2 つの因子が独立していて交互作用効果がない場合と、応答変数に対する一方の因子の影響がもう一方の因子のグループ (水準) に依存する場合があります。2 つの因子に交互作用がない場合のモデルを、"加法" モデルと呼びます。
ある自動車会社に 2 つの工場があり、各工場で同じ 3 種類の型式の自動車を製造しているとします。自動車の燃費効率は、工場と型式によって異なる可能性があります。この 2 つの因子 (工場と型式) によって、燃費効率 (応答) の違いが説明されます。関心の対象となる尺度の 1 つは、工場ごとの製造方法に起因する、燃費効率の違いです。もう 1 つの関心の対象となる尺度は、設計仕様の違いが原因となる (工場に関係ない) 型式ごとの燃費効率の違いです。これらの尺度の影響は "加法的" です。さらに、ある型式の燃費効率が工場によって異なっており、他の 2 つの型式では工場による違いがないとします。これを "交互作用" 効果と呼びます。交互作用効果を測定するには、特定の工場と型式の組み合わせについて複数の観測値が必要です。このような複数の観測値を "複製" と呼びます。
2 因子 ANOVA は、線形モデルの特殊なケースです。2 因子 ANOVA 形式のモデルは次のようになります。
ここで、
yijr は応答変数の観測値です。
i は行因子 A のグループ i を表します (i = 1, 2, ..., I)。
j は列因子 B のグループ j を表します (j = 1, 2, ..., J)。
r は複製数を表します (r = 1, 2, ..., R)。
観測値の個数の合計は N = I*J*R です。
μ は全体の平均です。
αi は全体の平均 μ に対する行因子 A によって定義されたグループの偏差です。αi の合計は 0 になります。
βj は全体の平均 μ に対する列因子 B によって定義されたグループの偏差です。βj の合計は 0 になります。
αβij は交互作用です。各行および各列で αβij の合計は 0 になります。
εijr はランダム外乱です。これらは、独立、正規分布、および一定の分散になっていると仮定されます。
燃費効率の例では次のようになります。
yijr は燃費効率の観測値、μ は全体の燃費効率の平均です。
αi は燃費効率の平均 μ に対する各自動車の燃費効率の偏差であり、自動車の "型式" に起因しています。
βj は、燃費効率の平均 μ に対する各自動車の燃費効率の偏差であり、自動車の "工場" に起因しています。
anova2
ではデータが平衡型になっている必要があるので、型式と工場のすべての組み合わせで自動車の数が同じでなければなりません。
2 因子 ANOVA では、因子 A および B の効果と応答変数 y に対する交互作用に関する仮説を検定します。行因子 A の各グループにおける平均応答の等価性について、仮説は次のようになります。
列因子 B の各グループにおける平均応答の等価性について、仮説は次のようになります。
列因子と行因子の交互作用について、仮説は次のようになります。
平衡型 2 因子 ANOVA 用データの準備
anova2
を使用して平衡型 2 因子 ANOVA を実行するには、特定の行列形式にデータを編成しなければなりません。行列の各列は、列因子 B のグループに対応する必要があります。各行は、行因子 A のグループに対応する必要があります。また、因子 A および B のグループの組み合わせすべてについて、複製の数を同じにする必要があります。
行因子 A に 3 つのグループ、列因子 B に 2 つのグループ (水準) があるとします。また、因子 A および B の組み合わせごとに、2 つの測定値または観測値があるとします (reps = 2
)。この場合、因子 A の各グループには 6 つの観測値、因子 B の各グループには 4 つの観測値があることになります。
添字は、それぞれ行、列および反復を示します。たとえば、y221 が対応する計測値は、因子 A の 2 番目のグループ、因子 B の 2 番目のグループ、およびこの組み合わせの 1 番目の複製です。
2 因子 ANOVA の実行
この例では、2 因子 ANOVA を実行して、自動車モデルと工場が自動車の燃費に与える効果を判定する方法を説明します。
標本データを読み込んで表示します。
load mileage
mileage
mileage = 6×3
33.3000 34.5000 37.4000
33.4000 34.8000 36.8000
32.9000 33.8000 37.6000
32.6000 33.4000 36.6000
32.5000 33.7000 37.0000
33.0000 33.9000 36.7000
3 つの型式 (列) と 2 つの工場 (行) があります。各工場では調査用に各型式の自動車を 3 台ずつ提供したので (つまり、複製数は 3)、データには燃費効率の行が 6 行あります。1 つ目の工場でのデータは最初の 3 行で、2 つ目の工場でのデータは後半の 3 行です。
2 因子 ANOVA を実行します。多重比較で使用するための統計量の構造体 stats
が返されます。
nmbcars = 3; % Number of cars from each model, i.e., number of replications
[~,~,stats] = anova2(mileage,nmbcars);
F 統計量を使用して仮説検定を行うと、型式、工場、および型式と工場のペア全体で燃費効率が同じであるかどうかを調べることができます。これらの検定を実行する前に、加法的な影響に合わせて調整する必要があります。anova2
は、これらの検定による p 値を返します。
型式による影響 (Columns
) の p 値は、小数点以下 4 桁まで 0 です。この結果は、燃費効率が型式ごとに異なることを強く示しています。
工場による影響 (Rows
) の p 値は 0.0039 で、これも有意性が高くなっています。この値は、ある工場で製造された自動車の燃費効率が他よりも高いことを示しています。観測された p 値は、燃費効率がどの工場でも正確に同じ場合、観測された F と同じくらい極端な F 統計量が偶然発生するのは 1000 回中約 4 回であることを示しています。
工場と型式に交互作用はないようです。0.8411 という p 値は、交互作用がない場合に観測結果が発生する可能性が高いこと (100 回中 84 回) を意味しています。
多重比較を実行して、3 つの型式のペアの中で大きく異なるものはどれであるかを調べます。
c = multcompare(stats);
Note: Your model includes an interaction term. A test of main effects can be difficult to interpret when the model includes interactions.
図の青いバーは、1 番目の型式の平均燃費効率の比較区間です。赤いバーは、2 番目および 3 番目の型式の平均燃費効率の比較区間です。2 番目の比較区間も 3 番目の比較区間も 1 番目の比較区間と重なっていないので、1 番目の型式の平均燃費効率は 2 番目および 3 番目の型式の平均燃費効率と異なることがわかります。他のバーをクリックすると、他の型式について検定を行うことができます。どの比較区間も重なっていないので、各型式の平均燃費効率は他の 2 つと有意に異なっていることがわかります。
多重比較の結果を table で表示します。
tbl = array2table(c,"VariableNames", ... ["Group A","Group B","Lower Limit","A-B","Upper Limit","P-value"])
tbl=3×6 table
Group A Group B Lower Limit A-B Upper Limit P-value
_______ _______ ___________ _______ ___________ __________
1 2 -1.5865 -1.0667 -0.54686 0.00038574
1 3 -4.5865 -4.0667 -3.5469 1.7898e-10
2 3 -3.5198 -3 -2.4802 7.8407e-09
行列 c
の初めの 2 列は、比較した型式のペアを示しています。最後の列は、検定の p 値を示しています。すべての "p" 値が小さいので、すべての型式で互いに平均燃費効率が有意に異なることがわかります。
計算の詳細
2 因子 ANOVA では、変動全体を次の成分に分割します。
全体の平均に対する行因子グループの平均の変動
全体の平均に対する列因子グループの平均の変動
列因子グループと行因子グループの平均に対する全体の平均および複製の平均の変動
複製の平均に対する観測値の変動
ANOVA によって、二乗和の合計 (SST) は、行因子 A に起因する二乗和 (SSA)、列因子 B に起因する二乗和 (SSB)、A と B の交互作用に起因する二乗和 (SSAB)、および誤差の二乗和 (SSE) に分割されます。
因子または交互作用に起因する変動を誤差による変動と比較します。この 2 つの変動の比率が大きい場合、因子または交互作用効果の影響は統計的に有意です。統計的な有意性は、F 分布になっている検定統計量を使用すると評価できます。
行因子 A の各グループについて平均応答が等しいという帰無仮説の検定統計量は、次のようになります。
列因子 B の各グループについて平均応答が等しいという帰無仮説の検定統計量は、次のようになります。
列因子と行因子の交互作用がゼロに等しいという帰無仮説の検定統計量は、次のようになります。
F 統計量の p 値が有意水準より小さい場合、帰無仮説は棄却されます。最も一般的な有意水準は、0.01 と 0.05 です。
ANOVA 表
ANOVA 表には、原因別のモデルの変動性、この変動性の有意性を検定するための F 統計量、およびこの変動性の有意性を判別するための p 値が記録されます。anova2
が返す p 値は、モデル方程式におけるランダム外乱 εij についての仮定によって決まります。正確な p 値を得るには、これらの外乱が独立、正規分布、および一定の分散になっている必要があります。標準的な ANOVA 表の形式は次のとおりです。
原因 | 二乗和 (SS) | 自由度 | 平均二乗 (MS) | F 統計量 | p 値 |
---|---|---|---|---|---|
列 | SSA | k – 1 | MSA | MSA/MSE | P(Fk – 1,mk(R – 1))>F |
行 | SSB | m – 1 | MSB | MSB/MSE | P(Fm – 1,mk(R – 1))>F |
交互作用 | SSAB | (m – 1)(k – 1) | MSAB | MSAB/MSE | P(F(m – 1)(k – 1),mk(R – 1))>F |
誤差 | SSE | mk(R – 1) | MSE | ||
合計 | SST | mkR – 1 |
anova2
は、6 つの列がある cell 配列として標準的な ANOVA 表を返します。
列 | 定義 |
---|---|
Source | 変化の原因。 |
SS | 各原因による二乗和 |
df | 各原因に関連付けられている自由度J が列因子のグループ数、I が行因子のグループ数、R が複製数であるとします。すると、観測値の総数は IJR、全体の自由度は IJR - 1 になります。I - 1 は行因子の自由度、J - 1 は列因子の自由度、(I - 1)(J - 1) は交互作用の自由度、IJ(R - 1) は誤差自由度です。 |
MS | 各原因の平均二乗 (比率 SS/df ) |
F | F 統計量 (平均二乗の比率) |
Prob>F | p 値は、F 統計量の値が検定統計量の計算値より大きくなる確率です。anova2 では、F 分布の cdf からこの確率が導き出されます。 |
ANOVA 表の各行には、データの変動性が原因別に示されます。
行 (原因) | 定義 |
---|---|
Columns | 列因子に起因する変動性 |
Rows | 行因子に起因する変動性 |
Interaction | 行因子と列因子の交互作用に起因する変動性 |
Error | 各グループのデータ間の違いとグループの平均の違いによる変動性 (グループ "内" の変動性) |
Total | 全体の変動性 |
参照
[1] Wu, C. F. J., and M. Hamada. Experiments: Planning, Analysis, and Parameter Design Optimization, 2000.
[2] Neter, J., M. H. Kutner, C. J. Nachtsheim, and W. Wasserman. 4th ed. Applied Linear Statistical Models. Irwin Press, 1996.
参考
anova
| anova1
| anova2
| anovan
| multcompare