← 統計検定テキスト 一覧
📊 対象級:準1級 | 重要度:B(標準)
要点(BLUF)
実験計画における**局所管理(フィッシャーの3原則 の第3原則)**を、具体的な配置として実装したのが乱塊法とラテン方格です。
S T = S 処理 + S ブロック + S E (乱塊法) \boxed{\;S_T = S_{\text{処理}} + S_{\text{ブロック}} + S_E\quad\text{(乱塊法)}\;} S T = S 処理 + S ブロック + S E (乱塊法)
S T = S 行 + S 列 + S 処理 + S E (ラテン方格) \boxed{\;S_T = S_{\text{行}} + S_{\text{列}} + S_{\text{処理}} + S_E\quad\text{(ラテン方格)}\;} S T = S 行 + S 列 + S 処理 + S E (ラテン方格)
要するに「誤差として一括処理していたばらつきを、ブロック変動(または行・列変動)として切り出すことで、真の誤差分散を小さくし、処理効果を検出しやすくする」のが両手法の共通ロジックです。
乱塊法:1方向のブロック制御。二元配置分散分析(分散分析 準1級部分)として解析できる。
ラテン方格:2方向(行・列)同時制御。 k × k k \times k k × k 配置で k 2 k^2 k 2 回の実験。交互作用は仮定しない。
1. 乱塊法(Randomized Block Design)
1-1. 設定と配置の発想
乱塊法とは何か。
処理因子(興味ある要因)とは別に、実験結果に影響しうる外乱因子が既知のとき、その外乱因子でブロックを作り、ブロック内で処理をランダムに割り付ける 実験配置です。
局所管理の実装という観点から言えば、「環境の均一な区画(ブロック)を作り、その中で無作為化する」ことで、ブロック間の環境差を処理の比較から切り離せます。
記号の定義。
記号 意味 a a a 処理の水準数(比較したい群の数) b b b ブロックの数 N = a b N = ab N = ab 全観測数(各ブロックに各処理を1回ずつ) x i j x_{ij} x ij 第 i i i 処理・第 j j j ブロックの観測値 x ˉ i ⋅ \bar{x}_{i\cdot} x ˉ i ⋅ 第 i i i 処理の平均 x ˉ ⋅ j \bar{x}_{\cdot j} x ˉ ⋅ j 第 j j j ブロックの平均 x ˉ \bar{x} x ˉ 全体の総平均
⚠️ 乱塊法では通常、各ブロック内で各処理を1回ずつ 行います(繰り返しなし)。ブロック×処理のセルに1観測のみです。
1-2. 線形モデル
乱塊法のデータ生成モデルは次の式で書けます。
x i j = μ + α i + β j + ε i j x_{ij} = \mu + \alpha_i + \beta_j + \varepsilon_{ij} x ij = μ + α i + β j + ε ij
項 意味 μ \mu μ 総平均 α i \alpha_i α i 第 i i i 処理の主効果(∑ i α i = 0 \sum_i \alpha_i = 0 ∑ i α i = 0 ) β j \beta_j β j 第 j j j ブロックの主効果(∑ j β j = 0 \sum_j \beta_j = 0 ∑ j β j = 0 ) ε i j \varepsilon_{ij} ε ij 誤差(∼ N ( 0 , σ 2 ) \sim N(0, \sigma^2) ∼ N ( 0 , σ 2 ) 、独立)
要するに「観測値 = 全体平均 + 処理の効果 + ブロックの効果 + 誤差」です。このモデルには交互作用項がありません 。これは乱塊法の標準的な仮定で、「処理効果はどのブロックでも同じ」という前提に相当します。
1-3. 平方和分解の導出
分解の出発点。
各観測の総平均まわりの偏差 ( x i j − x ˉ ) (x_{ij} - \bar{x}) ( x ij − x ˉ ) を3つに分解します。
x i j − x ˉ = ( x ˉ i ⋅ − x ˉ ) ⏟ 処理の効果 + ( x ˉ ⋅ j − x ˉ ) ⏟ ブロックの効果 + ( x i j − x ˉ i ⋅ − x ˉ ⋅ j + x ˉ ) ⏟ 残差(誤差) x_{ij} - \bar{x} = \underbrace{(\bar{x}_{i\cdot} - \bar{x})}_{\text{処理の効果}} + \underbrace{(\bar{x}_{\cdot j} - \bar{x})}_{\text{ブロックの効果}} + \underbrace{(x_{ij} - \bar{x}_{i\cdot} - \bar{x}_{\cdot j} + \bar{x})}_{\text{残差(誤差)}} x ij − x ˉ = 処理の効果 ( x ˉ i ⋅ − x ˉ ) + ブロックの効果 ( x ˉ ⋅ j − x ˉ ) + 残差(誤差) ( x ij − x ˉ i ⋅ − x ˉ ⋅ j + x ˉ )
要するに「全体平均からのズレを、処理でどれだけ説明できるか・ブロックでどれだけ説明できるか・それでも残る誤差はいくらか」に分けた、ということです。
2乗して総和を取る。
この恒等式を2乗し、i = 1 , … , a i=1,\dots,a i = 1 , … , a ・j = 1 , … , b j=1,\dots,b j = 1 , … , b で総和を取ります。クロス項(積の2倍)が消えることを確認します。
処理とブロックのクロス項:
∑ i ∑ j ( x ˉ i ⋅ − x ˉ ) ( x ˉ ⋅ j − x ˉ ) = ( ∑ i ( x ˉ i ⋅ − x ˉ ) ) ( ∑ j ( x ˉ ⋅ j − x ˉ ) ) = 0 × 0 = 0 \sum_i \sum_j (\bar{x}_{i\cdot} - \bar{x})(\bar{x}_{\cdot j} - \bar{x}) = \left(\sum_i (\bar{x}_{i\cdot} - \bar{x})\right)\left(\sum_j (\bar{x}_{\cdot j} - \bar{x})\right) = 0 \times 0 = 0 i ∑ j ∑ ( x ˉ i ⋅ − x ˉ ) ( x ˉ ⋅ j − x ˉ ) = ( i ∑ ( x ˉ i ⋅ − x ˉ ) ) ( j ∑ ( x ˉ ⋅ j − x ˉ ) ) = 0 × 0 = 0
各平均の定義から偏差の和は0になるため、クロス項はすべて消えます。一元配置で見た「平均まわりの偏差の和=0」(分散分析 参照)と同じ論理です。よって、
S T = S 処理 + S ブロック + S E \boxed{\;S_T = S_{\text{処理}} + S_{\text{ブロック}} + S_E\;} S T = S 処理 + S ブロック + S E
各平方和の式は次の通りです。
S T = ∑ i = 1 a ∑ j = 1 b ( x i j − x ˉ ) 2 S_T = \sum_{i=1}^{a}\sum_{j=1}^{b}(x_{ij} - \bar{x})^2 S T = i = 1 ∑ a j = 1 ∑ b ( x ij − x ˉ ) 2
S 処理 = b ∑ i = 1 a ( x ˉ i ⋅ − x ˉ ) 2 (処理平均が全体平均からどれだけ散らばるか) S_{\text{処理}} = b\sum_{i=1}^{a}(\bar{x}_{i\cdot} - \bar{x})^2 \quad\text{(処理平均が全体平均からどれだけ散らばるか)} S 処理 = b i = 1 ∑ a ( x ˉ i ⋅ − x ˉ ) 2 (処理平均が全体平均からどれだけ散らばるか)
S ブロック = a ∑ j = 1 b ( x ˉ ⋅ j − x ˉ ) 2 (ブロック平均が全体平均からどれだけ散らばるか) S_{\text{ブロック}} = a\sum_{j=1}^{b}(\bar{x}_{\cdot j} - \bar{x})^2 \quad\text{(ブロック平均が全体平均からどれだけ散らばるか)} S ブロック = a j = 1 ∑ b ( x ˉ ⋅ j − x ˉ ) 2 (ブロック平均が全体平均からどれだけ散らばるか)
S E = S T − S 処理 − S ブロック S_E = S_T - S_{\text{処理}} - S_{\text{ブロック}} S E = S T − S 処理 − S ブロック
ブロックを設けることで誤差が小さくなる理由。
もし乱塊法を使わず一元配置で分析したとすると、ブロック変動 S ブロック S_{\text{ブロック}} S ブロック は「群内変動(誤差)」に混入します。乱塊法では S ブロック S_{\text{ブロック}} S ブロック をきちんと切り出すので、残る誤差 S E S_E S E がその分だけ小さくなります。誤差が小さくなれば V E = S E / ϕ E V_E = S_E / \phi_E V E = S E / ϕ E が小さくなり、F値(= V 処理 / V E = V_{\text{処理}} / V_E = V 処理 / V E )が大きくなって検出力が上がります 。これが乱塊法を使う実質的な利益です。
1-4. 自由度の分解
N − 1 ⏟ ϕ T = ( a − 1 ) ⏟ ϕ 処理 + ( b − 1 ) ⏟ ϕ ブロック + ( a − 1 ) ( b − 1 ) ⏟ ϕ E \underbrace{N-1}_{\phi_T} = \underbrace{(a-1)}_{\phi_{\text{処理}}} + \underbrace{(b-1)}_{\phi_{\text{ブロック}}} + \underbrace{(a-1)(b-1)}_{\phi_E} ϕ T N − 1 = ϕ 処理 ( a − 1 ) + ϕ ブロック ( b − 1 ) + ϕ E ( a − 1 ) ( b − 1 )
総自由度 N − 1 = a b − 1 N-1 = ab - 1 N − 1 = ab − 1 :N N N 個のデータが総平均1個に縛られる。
処理自由度 a − 1 a-1 a − 1 :a a a 個の処理平均が総平均1個に縛られる。
ブロック自由度 b − 1 b-1 b − 1 :b b b 個のブロック平均が総平均1個に縛られる。
誤差自由度 ( a − 1 ) ( b − 1 ) (a-1)(b-1) ( a − 1 ) ( b − 1 ) :残りの自由度。繰り返しがないため、セルの内側(純粋な誤差)は直接測れず、この数しか残らない。
検算:( a − 1 ) + ( b − 1 ) + ( a − 1 ) ( b − 1 ) = a − 1 + b − 1 + a b − a − b + 1 = a b − 1 = N − 1 (a-1) + (b-1) + (a-1)(b-1) = a - 1 + b - 1 + ab - a - b + 1 = ab - 1 = N-1 ( a − 1 ) + ( b − 1 ) + ( a − 1 ) ( b − 1 ) = a − 1 + b − 1 + ab − a − b + 1 = ab − 1 = N − 1 。成立します。
1-5. 分散分析表(乱塊法)
変動要因 平方和 S S S 自由度 ϕ \phi ϕ 平均平方 V V V F値 処理 S 処理 S_{\text{処理}} S 処理 a − 1 a-1 a − 1 V 処理 = S 処理 a − 1 V_{\text{処理}} = \dfrac{S_{\text{処理}}}{a-1} V 処理 = a − 1 S 処理 V 処理 V E \dfrac{V_{\text{処理}}}{V_E} V E V 処理 ブロック S ブロック S_{\text{ブロック}} S ブロック b − 1 b-1 b − 1 V ブロック = S ブロック b − 1 V_{\text{ブロック}} = \dfrac{S_{\text{ブロック}}}{b-1} V ブロック = b − 1 S ブロック (参考値) 誤差 E E E S E S_E S E ( a − 1 ) ( b − 1 ) (a-1)(b-1) ( a − 1 ) ( b − 1 ) V E = S E ( a − 1 ) ( b − 1 ) V_E = \dfrac{S_E}{(a-1)(b-1)} V E = ( a − 1 ) ( b − 1 ) S E 全体 T T T S T S_T S T a b − 1 ab-1 ab − 1
⚠️ ブロック行のF値は「参考値」と表記しました。ブロックは処理効果を分離するために設けた層別変数であり、「ブロック間に差があるか」という仮説検定が主目的ではないからです(ブロックは興味の対象ではなく、誤差を削るための道具)。
1-6. 二元配置分散分析との関係
乱塊法は「処理 × \times × ブロック」を2因子とした繰り返しなし二元配置分散分析 として解析できます(分散分析 準1級部分の「繰り返しなし(r = 1 r=1 r = 1 )」に対応)。モデル式・平方和・自由度がまったく同じです。違いは解釈だけで、一方の因子を「処理(興味ある因子)」、もう一方を「ブロック(誤差を削るための層別)」と見るかどうかです。
graph TD
RBD["乱塊法\n(Randomized Block Design)"]
TWO["繰り返しなし二元配置\n分散分析"]
RBD -- "解析は同じ" --> TWO
TWO -- "一方の因子を\nブロックとして解釈" --> RBD
TWO --> TREAT["処理因子(A)\n自由度:a-1"]
TWO --> BLOCK["ブロック因子(B)\n自由度:b-1"]
TWO --> ERR["誤差\n自由度:(a-1)(b-1)"]
2. ラテン方格(Latin Square Design)
2-1. 発想と配置
乱塊法が「1方向の局所管理」なのに対し、ラテン方格は2方向同時の局所管理 です。「行方向の外乱」と「列方向の外乱」の両方をブロックとして取り込み、少ない実験回数で処理効果を分離します。
ラテン方格の定義。
k × k k \times k k × k のマス目に k k k 種類の記号(処理)を、各行に1回・各列に1回ずつ 現れるように並べた配置です。 k = 3 k=3 k = 3 の例:
graph LR
subgraph "3×3 ラテン方格(A・B・Cが各行各列に1回ずつ)"
R1["行1:A B C"]
R2["行2:B C A"]
R3["行3:C A B"]
end
実験回数は k 2 k^2 k 2 回。完全配置なら k k k 水準×k k k 水準×k k k 水準 = k 3 = k^3 = k 3 回必要なところを、 k 2 k^2 k 2 回に削減できます。たとえば k = 4 k=4 k = 4 なら 64回 → 16回です。
直交性(各変動源が互いに独立である根拠)。
ラテン方格の「各行各列に1回ずつ」という構造により、行・列・処理の3つの変動源が互いに直交します。直交しているとは「一方の変動を固定して見たとき、他の変動の和がキャンセルされる」ことを意味します。これが平方和を独立に分解できる根拠です。
2-2. 線形モデル
x i j k = μ + α i + β j + γ k + ε i j k x_{ijk} = \mu + \alpha_i + \beta_j + \gamma_k + \varepsilon_{ijk} x ij k = μ + α i + β j + γ k + ε ij k
項 意味 μ \mu μ 総平均 α i \alpha_i α i 第 i i i 行の効果(∑ i α i = 0 \sum_i \alpha_i = 0 ∑ i α i = 0 ) β j \beta_j β j 第 j j j 列の効果(∑ j β j = 0 \sum_j \beta_j = 0 ∑ j β j = 0 ) γ k \gamma_k γ k 第 k k k 処理の効果(∑ k γ k = 0 \sum_k \gamma_k = 0 ∑ k γ k = 0 ) ε i j k \varepsilon_{ijk} ε ij k 誤差(∼ N ( 0 , σ 2 ) \sim N(0, \sigma^2) ∼ N ( 0 , σ 2 ) 、独立)
要するに「観測値 = 全体平均 + 行の効果 + 列の効果 + 処理の効果 + 誤差」というモデルです。
⚠️ このモデルには行×列、行×処理、列×処理などの交互作用項がありません 。ラテン方格は「交互作用は無視できる(または存在しない)」という前提のもとで使う設計です。
2-3. 平方和分解の導出
乱塊法と同じ手順で、総偏差を4つに分解します。
x i j k − x ˉ = ( x ˉ i ⋅ ⋅ − x ˉ ) ⏟ 行効果 + ( x ˉ ⋅ j ⋅ − x ˉ ) ⏟ 列効果 + ( x ˉ ⋅ ⋅ k − x ˉ ) ⏟ 処理効果 + 残差 ⏟ 誤差 x_{ijk} - \bar{x} = \underbrace{(\bar{x}_{i\cdot\cdot} - \bar{x})}_{\text{行効果}} + \underbrace{(\bar{x}_{\cdot j\cdot} - \bar{x})}_{\text{列効果}} + \underbrace{(\bar{x}_{\cdot\cdot k} - \bar{x})}_{\text{処理効果}} + \underbrace{\text{残差}}_{\text{誤差}} x ij k − x ˉ = 行効果 ( x ˉ i ⋅⋅ − x ˉ ) + 列効果 ( x ˉ ⋅ j ⋅ − x ˉ ) + 処理効果 ( x ˉ ⋅⋅ k − x ˉ ) + 誤差 残差
ここで:
x ˉ i ⋅ ⋅ \bar{x}_{i\cdot\cdot} x ˉ i ⋅⋅ :第 i i i 行の平均
x ˉ ⋅ j ⋅ \bar{x}_{\cdot j\cdot} x ˉ ⋅ j ⋅ :第 j j j 列の平均
x ˉ ⋅ ⋅ k \bar{x}_{\cdot\cdot k} x ˉ ⋅⋅ k :第 k k k 処理の平均
各偏差の和は定義から0になるため、クロス項はすべて消えます(乱塊法の場合と同じ論理)。よって、
S T = S 行 + S 列 + S 処理 + S E \boxed{\;S_T = S_{\text{行}} + S_{\text{列}} + S_{\text{処理}} + S_E\;} S T = S 行 + S 列 + S 処理 + S E
各平方和の式:
S T = ∑ i ∑ j ( x i j k − x ˉ ) 2 (全 k 2 観測の総平方和) S_T = \sum_{i}\sum_{j}(x_{ijk} - \bar{x})^2 \quad\text{(全 } k^2 \text{ 観測の総平方和)} S T = i ∑ j ∑ ( x ij k − x ˉ ) 2 (全 k 2 観測の総平方和)
S 行 = k ∑ i = 1 k ( x ˉ i ⋅ ⋅ − x ˉ ) 2 , S 列 = k ∑ j = 1 k ( x ˉ ⋅ j ⋅ − x ˉ ) 2 , S 処理 = k ∑ k ′ = 1 k ( x ˉ ⋅ ⋅ k ′ − x ˉ ) 2 S_{\text{行}} = k\sum_{i=1}^{k}(\bar{x}_{i\cdot\cdot} - \bar{x})^2, \quad S_{\text{列}} = k\sum_{j=1}^{k}(\bar{x}_{\cdot j\cdot} - \bar{x})^2, \quad S_{\text{処理}} = k\sum_{k'=1}^{k}(\bar{x}_{\cdot\cdot k'} - \bar{x})^2 S 行 = k i = 1 ∑ k ( x ˉ i ⋅⋅ − x ˉ ) 2 , S 列 = k j = 1 ∑ k ( x ˉ ⋅ j ⋅ − x ˉ ) 2 , S 処理 = k k ′ = 1 ∑ k ( x ˉ ⋅⋅ k ′ − x ˉ ) 2
S E = S T − S 行 − S 列 − S 処理 S_E = S_T - S_{\text{行}} - S_{\text{列}} - S_{\text{処理}} S E = S T − S 行 − S 列 − S 処理
要するに「総変動から行・列・処理の変動を差し引いた残り」が誤差です。交互作用が存在するとしたらそれも誤差に混入しますが、ラテン方格ではそれを「ない」と仮定して S E S_E S E を純粋な誤差とみなします。
2-4. 自由度の分解
全観測数は k 2 k^2 k 2 なので、
k 2 − 1 ⏟ ϕ T = ( k − 1 ) ⏟ ϕ 行 + ( k − 1 ) ⏟ ϕ 列 + ( k − 1 ) ⏟ ϕ 処理 + ( k − 1 ) ( k − 2 ) ⏟ ϕ E \underbrace{k^2 - 1}_{\phi_T} = \underbrace{(k-1)}_{\phi_{\text{行}}} + \underbrace{(k-1)}_{\phi_{\text{列}}} + \underbrace{(k-1)}_{\phi_{\text{処理}}} + \underbrace{(k-1)(k-2)}_{\phi_E} ϕ T k 2 − 1 = ϕ 行 ( k − 1 ) + ϕ 列 ( k − 1 ) + ϕ 処理 ( k − 1 ) + ϕ E ( k − 1 ) ( k − 2 )
誤差自由度 ( k − 1 ) ( k − 2 ) (k-1)(k-2) ( k − 1 ) ( k − 2 ) の導出。
ϕ E = ( k 2 − 1 ) − 3 ( k − 1 ) = k 2 − 1 − 3 k + 3 = k 2 − 3 k + 2 = ( k − 1 ) ( k − 2 ) \phi_E = (k^2 - 1) - 3(k-1) = k^2 - 1 - 3k + 3 = k^2 - 3k + 2 = (k-1)(k-2) ϕ E = ( k 2 − 1 ) − 3 ( k − 1 ) = k 2 − 1 − 3 k + 3 = k 2 − 3 k + 2 = ( k − 1 ) ( k − 2 )
要するに、総自由度から行・列・処理の自由度を3つ分引けば残りが誤差自由度です。
実用上の注意点。
k = 3 k=3 k = 3 のとき ϕ E = ( 3 − 1 ) ( 3 − 2 ) = 2 \phi_E = (3-1)(3-2) = 2 ϕ E = ( 3 − 1 ) ( 3 − 2 ) = 2 。これは非常に小さく、F分布の臨界値が大きくなって検出力が下がります。ラテン方格の実用推奨は k ≥ 5 k \ge 5 k ≥ 5 が多いのはこのためです。 k = 2 k=2 k = 2 では ϕ E = 0 \phi_E = 0 ϕ E = 0 となり分析不能になります。
2-5. 分散分析表(ラテン方格)
変動要因 平方和 S S S 自由度 ϕ \phi ϕ 平均平方 V V V F値 行 S 行 S_{\text{行}} S 行 k − 1 k-1 k − 1 V 行 V_{\text{行}} V 行 V 行 / V E V_{\text{行}} / V_E V 行 / V E 列 S 列 S_{\text{列}} S 列 k − 1 k-1 k − 1 V 列 V_{\text{列}} V 列 V 列 / V E V_{\text{列}} / V_E V 列 / V E 処理 S 処理 S_{\text{処理}} S 処理 k − 1 k-1 k − 1 V 処理 V_{\text{処理}} V 処理 V 処理 / V E V_{\text{処理}} / V_E V 処理 / V E 誤差 E E E S E S_E S E ( k − 1 ) ( k − 2 ) (k-1)(k-2) ( k − 1 ) ( k − 2 ) V E V_E V E 全体 T T T S T S_T S T k 2 − 1 k^2 - 1 k 2 − 1
⚠️ 自由度の検算:( k − 1 ) + ( k − 1 ) + ( k − 1 ) + ( k − 1 ) ( k − 2 ) = 3 ( k − 1 ) + ( k − 1 ) ( k − 2 ) = ( k − 1 ) { 3 + k − 2 } = ( k − 1 ) ( k + 1 ) = k 2 − 1 (k-1)+(k-1)+(k-1)+(k-1)(k-2) = 3(k-1)+(k-1)(k-2) = (k-1)\{3 + k - 2\} = (k-1)(k+1) = k^2 - 1 ( k − 1 ) + ( k − 1 ) + ( k − 1 ) + ( k − 1 ) ( k − 2 ) = 3 ( k − 1 ) + ( k − 1 ) ( k − 2 ) = ( k − 1 ) { 3 + k − 2 } = ( k − 1 ) ( k + 1 ) = k 2 − 1 。成立します。
3. 乱塊法・ラテン方格の位置づけ(まとめ図)
flowchart TD
F3["フィッシャーの3原則\n反復・無作為化・局所管理"]
F3 --> CRD["完全無作為化法\n(局所管理なし)\n⇒ 一元配置分散分析"]
F3 --> RBD["乱塊法\n(1方向の局所管理)\n⇒ 繰り返しなし二元配置分散分析\nST = S処理 + Sブロック + SE"]
F3 --> LS["ラテン方格\n(2方向の局所管理)\n⇒ 3変動源分解\nST = S行 + S列 + S処理 + SE"]
RBD --> OA["直交表・他の計画"]
LS --> OA
⚠️ 引っかけポイント・頻出論点
(1) ブロックは「興味ある要因」ではない。
ブロック因子は誤差を削るための層別変数です。「ブロック間に差があるか」を主目的とする検定ではありません。ブロックを「もう1つの処理因子として関心を持つ」のは設計の誤解です。処理因子と混同しないこと。
(2) ラテン方格は交互作用を「仮定しない」ではなく「無視できると前提する」。
ラテン方格の設計では、行×列・行×処理・列×処理の交互作用は存在しない(または無視できるほど小さい)という前提が必要です。交互作用が実は大きい場合、それは S E S_E S E に混入し、誤差分散が過大になって(または過小になって)検定が歪みます。「交互作用がないと確信できる」場面でのみ使うべき設計です。
(3) 行・列・処理の3要因が直交していることが前提。
ラテン方格の「各行各列に1回ずつ」という構造が直交性を保証します。この構造を崩した(欠損のある)配置では平方和の独立分解が成り立たなくなります。
(4) ラテン方格の誤差自由度が小さい問題。
k = 3 k=3 k = 3 では ϕ E = 2 \phi_E = 2 ϕ E = 2 で検出力が低く、実用上は k ≥ 5 k \ge 5 k ≥ 5 が推奨されます。誤差自由度を増やすには「グレコ・ラテン方格」(2つのラテン方格の重ね合わせ)など発展的な計画に進む必要があります(直交表 へつながります)。
(5) 乱塊法では誤差自由度が ( a − 1 ) ( b − 1 ) (a-1)(b-1) ( a − 1 ) ( b − 1 ) で繰り返しなし二元配置と同じ。
繰り返しがないため、交互作用と誤差を分離できません。「交互作用がない」という仮定のもとで誤差を ( a − 1 ) ( b − 1 ) (a-1)(b-1) ( a − 1 ) ( b − 1 ) の自由度で推定します。
よくある疑問(Q&A)
Q1. 乱塊法はただの二元配置分散分析と何が違うのですか?
分析手順はまったく同じです。違いは設計の意図と解釈だけです。二元配置の「B因子」を、処理効果を比較するための背景制御(誤差削減)に特化して使うのが乱塊法です。二元配置では両因子とも「その効果に関心がある」のに対し、乱塊法ではブロック因子は「邪魔な変動を取り除く道具」として使います。解析コードを書けば同じコマンドで動きますが、「なぜブロックを設けるか」という設計思想が核心です。
Q2. ラテン方格で交互作用が調べられないのに、使う意味がありますか?
はい、あります。交互作用が存在しないとあらかじめ理論的に言える(または工学的に無視できる)状況では、ラテン方格は「少ない実験回数で2方向の外乱を制御できる」という強い利点を持ちます。 k 3 k^3 k 3 回必要な完全配置実験を k 2 k^2 k 2 回に削減しながら、処理効果を分離できます。交互作用が疑われる状況では使わず、完全要因計画または繰り返しのある計画を選ぶべきです。
Q3. 乱塊法の「ブロック内でランダム割り付け」とはどういう意味ですか?
たとえば処理が3種類(A・B・C)でブロックが「実験日」(月・火・水)なら、月曜日に A・B・C をランダムな順序で実施し、火曜日・水曜日でも同様にランダムな順序で実施します。「月曜にAだけやる」ではなく、「月曜の中でA・B・Cをランダムに割り振る」ことが重要です。これが局所管理(ブロック内制御)+無作為化(ブロック内ランダム)の組み合わせです。
Q4. ブロックを設けたのに処理の検出力が上がるのはなぜですか?
ブロックを設けないと、ブロック間のばらつき(S ブロック S_{\text{ブロック}} S ブロック )が誤差 S E S_E S E に混入します。乱塊法で明示的にブロック効果を切り出すと、残る誤差 S E S_E S E が小さくなります。誤差が小さくなれば誤差平均平方 V E V_E V E も小さくなり、F値 = V 処理 / V E = V_{\text{処理}} / V_E = V 処理 / V E が大きくなって検定が有意になりやすくなります。「ブロックを設ける = 分母(物差し)を縮める = 処理効果が相対的に際立つ」というメカニズムです。
Q5. ラテン方格の自由度計算がなぜ ( k − 1 ) ( k − 2 ) (k-1)(k-2) ( k − 1 ) ( k − 2 ) になるのですか?
総自由度 k 2 − 1 k^2 - 1 k 2 − 1 から行・列・処理の各自由度(それぞれ k − 1 k-1 k − 1 )を3つ引けば残ります。式で示すと k 2 − 1 − 3 ( k − 1 ) = k 2 − 3 k + 2 = ( k − 1 ) ( k − 2 ) k^2 - 1 - 3(k-1) = k^2 - 3k + 2 = (k-1)(k-2) k 2 − 1 − 3 ( k − 1 ) = k 2 − 3 k + 2 = ( k − 1 ) ( k − 2 ) です。k = 3 k=3 k = 3 なら ( 2 ) ( 1 ) = 2 (2)(1)=2 ( 2 ) ( 1 ) = 2 、k = 4 k=4 k = 4 なら ( 3 ) ( 2 ) = 6 (3)(2)=6 ( 3 ) ( 2 ) = 6 です。行・列・処理の3方向を分離した代償として、誤差に使える自由度が少ない、というのがラテン方格の本質的な制約です。
まとめ
乱塊法 は フィッシャーの3原則 の局所管理を「ブロック化」として実装した実験配置。ブロック内で処理を無作為割り付けする。
平方和分解:S T = S 処理 + S ブロック + S E S_T = S_{\text{処理}} + S_{\text{ブロック}} + S_E S T = S 処理 + S ブロック + S E 。自由度:ϕ 処理 = a − 1 \phi_{\text{処理}} = a-1 ϕ 処理 = a − 1 、ϕ ブロック = b − 1 \phi_{\text{ブロック}} = b-1 ϕ ブロック = b − 1 、ϕ E = ( a − 1 ) ( b − 1 ) \phi_E = (a-1)(b-1) ϕ E = ( a − 1 ) ( b − 1 ) 。
ブロックを設けることで S ブロック S_{\text{ブロック}} S ブロック を誤差から切り離し、 V E V_E V E を小さくして検出力を上げる 。これが乱塊法の実質的な利益。
乱塊法の解析は「繰り返しなし二元配置分散分析」(分散分析 準1級部分)と等価。
ラテン方格 は行・列の2方向同時制御。k × k k \times k k × k 配置で各行各列に各処理が1回。実験回数を k 3 k^3 k 3 から k 2 k^2 k 2 に削減。
平方和分解:S T = S 行 + S 列 + S 処理 + S E S_T = S_{\text{行}} + S_{\text{列}} + S_{\text{処理}} + S_E S T = S 行 + S 列 + S 処理 + S E 。誤差自由度:( k − 1 ) ( k − 2 ) (k-1)(k-2) ( k − 1 ) ( k − 2 ) (k = 3 k=3 k = 3 では2と小さい)。
ラテン方格は交互作用なしを前提とする 。交互作用が疑われる状況では使わない。
両手法とも「興味のない外乱変動を切り出して誤差を小さくする」という共通ロジックで動いている。より複雑な制御には 直交表 へ進む。
関連ノート