두 그룹 비교에서의 t·F 관계 — F = t²

모형 비교 관점에서 t 검정과 F 검정이 같은 절차임을 도출

Maxwell Ch.4 의 두 집단 평균 비교를 모형 비교로 도출한다. Restricted model 에서 μ* = (Y₁ + Y₂)/2 가 LSE 임을 증명하고, E_R - E_F 가 (Y₁ - Y₂)² / (1/n₁ + 1/n₂) 로 단순화됨을 보인다. 이로부터 F = t² 의 동치성과 ANOVA 의 MS_W 사용의 정당성을 정리한다.

Experimentation
Fundamentals
저자

Kwangmin Kim

공개

2026년 05월 08일

1 도입 — 두 그룹 비교를 다시 본다

이미 A-MAX3-1 에서 two-sample t 검정과 F 검정의 관계를 짧게 다뤘다. 이 글은 Maxwell Ch.4 의 모형 비교 도출 을 자세히 다룬다. 핵심 결과:

\[ F = \frac{(\bar{Y}_1 - \bar{Y}_2)^2}{\left(\frac{1}{n_1} + \frac{1}{n_2}\right) \text{MS}_W}, \quad t^2 = F \]

이 도출이 중요한 이유는 두 그룹 비교 가 일반 대비 분석가장 단순한 사례 임을 보여주기 때문이다. 이 골격이 일반 대비, 직교 대비, 다중 비교까지 일관되게 확장된다.

2 두 모형의 정의

2.1 Full Model (Ch.3 와 동일)

\[ Y_{ij} = \mu_j + \varepsilon_{ij}, \quad j = 1, 2, \ldots, J, \; i = 1, 2, \ldots, n_j \]

각 그룹 \(j\) 가 자기 평균 \(\mu_j\) 를 가진다. 모수의 수: \(J\).

2.2 Restricted Model

귀무가설 \(H_0: \mu_1 = \mu_2\) 가 참이라 가정. 그룹 1 과 2 가 공통 평균 \(\mu^*\) 를 갖고, 나머지 그룹은 자기 평균을 가진다.

\[ Y_{i1} = \mu^* + \varepsilon_{i1} \] \[ Y_{i2} = \mu^* + \varepsilon_{i2} \] \[ Y_{ij} = \mu_j + \varepsilon_{ij}, \quad j = 3, 4, \ldots, J \]

모수의 수: \(J - 1\) (그룹 1, 2 가 합쳐져서).

2.3 자유도

  • Full model 잔차 자유도: \(n - J\)
  • Restricted model 잔차 자유도: \(n - (J - 1) = n - J + 1\)
  • 차이: \(\text{df}_R - \text{df}_F = 1\)

자유도 차이 1 이 개별 비교 F 통계량의 분자 자유도이다.

3 \(\widehat{\mu}^*\) 의 도출

Restricted model 에서 \(\mu^*\) 의 LSE 를 구한다. 최소화 할 양:

\[ \sum_{i=1}^{n_1} (Y_{i1} - \widehat{\mu}^*)^2 + \sum_{i=1}^{n_2} (Y_{i2} - \widehat{\mu}^*)^2 \]

이는 그룹 1 과 2 의 자료를 합친 한 그룹 에 대한 잔차 제곱합이다. A-MAX3-1 의 결과를 적용하면:

\[ \widehat{\mu}^* = \frac{\sum_{i=1}^{n_1} Y_{i1} + \sum_{i=1}^{n_2} Y_{i2}}{n_1 + n_2} \]

이는 가중 평균 이다.

\[ \widehat{\mu}^* = \frac{n_1 \bar{Y}_1 + n_2 \bar{Y}_2}{n_1 + n_2} \]

균형 설계 (\(n_1 = n_2\)) 에서는:

\[ \widehat{\mu}^* = \frac{\bar{Y}_1 + \bar{Y}_2}{2} \]

직관 — 가중 평균이 자연스러운 이유

\(\widehat{\mu}^*\)그룹 평균의 단순 평균 이 아니라 표본 크기로 가중된 평균 인 이유는?

표본 크기가 큰 그룹의 평균이 더 정확한 추정 이기 때문이다. 그룹 1 에 1000 명, 그룹 2 에 10 명이 있다면, 그룹 1 의 평균이 그룹 2 보다 훨씬 안정적이다. 두 평균을 합칠 때 그룹 1 에 더 큰 가중치 를 줘야 한다.

가중치 \(n_j\)역분산 (그룹 평균의 분산은 \(\sigma^2 / n_j\), 그 역수는 \(n_j / \sigma^2\)) 에 비례하므로, 정확한 그룹에 더 큰 가중치를 주는 역분산 가중 의 형태다.

이 패턴은 메타 분석 (meta-analysis) 에서도 동일하게 나타난다. 여러 연구의 효과 추정을 합칠 때 각 연구의 정밀도 로 가중치를 준다.

4 \(E_R - E_F\) 의 도출

각 모형의 잔차 제곱합:

4.1 Full Model

\[ E_F = \sum_{j=1}^{2} \sum_{i=1}^{n_j} (Y_{ij} - \bar{Y}_j)^2 + \sum_{j=3}^{J} \sum_{i=1}^{n_j} (Y_{ij} - \bar{Y}_j)^2 \]

4.2 Restricted Model

\[ E_R = \sum_{j=1}^{2} \sum_{i=1}^{n_j} (Y_{ij} - \widehat{\mu}^*)^2 + \sum_{j=3}^{J} \sum_{i=1}^{n_j} (Y_{ij} - \bar{Y}_j)^2 \]

두 식의 그룹 3~J 부분이 동일 하므로, 차이는 그룹 1 과 2 부분 에서만 발생한다.

\[ E_R - E_F = \sum_{j=1}^{2} \sum_{i=1}^{n_j} (Y_{ij} - \widehat{\mu}^*)^2 - \sum_{j=1}^{2} \sum_{i=1}^{n_j} (Y_{ij} - \bar{Y}_j)^2 \]

A-MAX3-1 의 식 \((\star)\) 를 두 그룹 각각에 적용하면 (트릭: \(-\bar{Y}_j + \bar{Y}_j\) 추가):

\[ \sum_{i=1}^{n_j} (Y_{ij} - \widehat{\mu}^*)^2 = \sum_{i=1}^{n_j} (Y_{ij} - \bar{Y}_j)^2 + n_j (\bar{Y}_j - \widehat{\mu}^*)^2 \]

따라서

\[ E_R - E_F = n_1 (\bar{Y}_1 - \widehat{\mu}^*)^2 + n_2 (\bar{Y}_2 - \widehat{\mu}^*)^2 \]

4.3 \(\widehat{\mu}^*\) 대입

\(\widehat{\mu}^* = \frac{n_1 \bar{Y}_1 + n_2 \bar{Y}_2}{n_1 + n_2}\) 를 대입하면:

\[ \bar{Y}_1 - \widehat{\mu}^* = \bar{Y}_1 - \frac{n_1 \bar{Y}_1 + n_2 \bar{Y}_2}{n_1 + n_2} = \frac{n_2 (\bar{Y}_1 - \bar{Y}_2)}{n_1 + n_2} \]

\[ \bar{Y}_2 - \widehat{\mu}^* = -\frac{n_1 (\bar{Y}_1 - \bar{Y}_2)}{n_1 + n_2} \]

따라서

\[ E_R - E_F = n_1 \cdot \frac{n_2^2 (\bar{Y}_1 - \bar{Y}_2)^2}{(n_1 + n_2)^2} + n_2 \cdot \frac{n_1^2 (\bar{Y}_1 - \bar{Y}_2)^2}{(n_1 + n_2)^2} \]

\[ = \frac{n_1 n_2 (n_1 + n_2) (\bar{Y}_1 - \bar{Y}_2)^2}{(n_1 + n_2)^2} = \frac{n_1 n_2}{n_1 + n_2} (\bar{Y}_1 - \bar{Y}_2)^2 \]

또는 동등하게:

\[ \boxed{E_R - E_F = \frac{(\bar{Y}_1 - \bar{Y}_2)^2}{\frac{1}{n_1} + \frac{1}{n_2}}} \tag{$\diamond$} \]

직관 — 식 \((\diamond)\) 의 의미

분자 \((\bar{Y}_1 - \bar{Y}_2)^2\) — 두 그룹 평균 차이의 제곱. 차이가 클수록 restricted model 이 부족하다.

분모 \(\frac{1}{n_1} + \frac{1}{n_2}\) — 두 그룹의 역표본크기 합. 이는 두 평균 차이의 분산의 정도 를 결정한다. 표본이 작으면 분모가 커져 같은 차이라도 상대적으로 작아진다 (검정 통계량 작음).

따라서 \(E_R - E_F\)그룹 차이의 효과 (분자)추정의 정밀도 (분모) 를 결합한 양이다. F 통계량은 이를 오차 분산 (\(\text{MS}_W\)) 으로 다시 나눠서 표준화한다.

균형 설계 (\(n_1 = n_2 = n_0\)) 에서 분모 \(\frac{1}{n_0} + \frac{1}{n_0} = \frac{2}{n_0}\) 가 최소이다. 즉 균형 설계가 검정력 최대화 의 이론적 근거다.

5 F 통계량의 표현

\[ F = \frac{(E_R - E_F) / (\text{df}_R - \text{df}_F)}{E_F / \text{df}_F} \]

자유도:

  • \(\text{df}_R - \text{df}_F = 1\)
  • \(\text{df}_F = n - J\) (전체 ANOVA 의 잔차 자유도)
  • \(E_F / \text{df}_F = \text{MS}_W\) (전체 ANOVA 의 평균 제곱)

대입하면:

\[ F = \frac{(\bar{Y}_1 - \bar{Y}_2)^2 / \left(\frac{1}{n_1} + \frac{1}{n_2}\right)}{\text{MS}_W} = \frac{(\bar{Y}_1 - \bar{Y}_2)^2}{\left(\frac{1}{n_1} + \frac{1}{n_2}\right) \text{MS}_W} \]

이것이 Maxwell 의 식 1 (Ch.4) 이다.

6 t 통계량과 \(F = t^2\)

ANOVA 에서 사용하는 t 통계량 (모든 그룹 자료로 추정한 분산):

\[ t = \frac{\bar{Y}_1 - \bar{Y}_2}{\sqrt{\text{MS}_W \left(\frac{1}{n_1} + \frac{1}{n_2}\right)}} \]

자유도 \(n - J\).

이를 제곱:

\[ t^2 = \frac{(\bar{Y}_1 - \bar{Y}_2)^2}{\text{MS}_W \left(\frac{1}{n_1} + \frac{1}{n_2}\right)} = F \]

따라서 \(F = t^2\). 동등성이 확인된다.

6.1 분포 관계

\(t \sim t_{n-J}\), \(F \sim F_{1, n-J}\) 이고 \(F = t^2\) 이므로 다음 분포 관계가 성립한다.

\[ F_{1, d} = (t_d)^2 \]

이는 임의의 자유도 \(d\) 에 대해 성립하는 일반 결과이다. 통계 표 또는 함수에서 한 분포만 알면 다른 분포를 직접 도출 가능.

7 ANOVA 의 \(\text{MS}_W\) vs Two-Sample t 의 풀링 분산

A-MAX4-0 의 직관에서 다뤘듯이, ANOVA 후 사용하는 t 통계량은 전체 ANOVA 의 \(\text{MS}_W\) 를 사용한다. 이는 표준 two-sample t 가 사용하는 그 두 그룹만의 풀링 분산 과 다르다.

검정 분모 분산 자유도
Two-sample t (그 두 그룹만) \(s_p^2 = \frac{(n_1-1) s_1^2 + (n_2-1) s_2^2}{n_1 + n_2 - 2}\) \(n_1 + n_2 - 2\)
ANOVA 후 t (모든 그룹) \(\text{MS}_W = \frac{\sum_j (n_j - 1) s_j^2}{n - J}\) \(n - J\)

ANOVA 후 t 가 자유도가 더 크다. 검정력이 약간 더 높다.

직관 — 자유도가 검정력에 미치는 영향

자유도가 큰 t 분포는 꼬리가 더 짧다. 임계값 \(t_{\alpha/2, df}\) 가 작아진다.

\(df\) \(t_{0.025, df}\)
5 2.571
10 2.228
20 2.086
30 2.042
60 2.000
\(\infty\) 1.96

차이가 크지 않지만, 작은 표본 + 작은 자유도 에서 의미 있다. ANOVA 후 t 검정의 자유도 \(n - J\) 가 two-sample t 의 \(n_1 + n_2 - 2\) 보다 클수록 임계값이 작아져 검정력이 향상된다.

대신 등분산 가정 이 더 엄격하게 적용된다. 모든 그룹의 분산이 같다는 가정이 깨지면 풀링이 부정확. 따라서 등분산 진단 (Levene 등) 후 결정하는 것이 권장된다.

8 두 그룹 사례를 대비 로 표현

이 글의 분석을 대비 표기 로 옮기면:

대비 계수: \(c_1 = 1, c_2 = -1, c_3 = c_4 = \cdots = c_J = 0\).

대비:

\[ \psi = \sum_{j=1}^{J} c_j \mu_j = \mu_1 - \mu_2 \]

귀무가설 \(H_0: \psi = 0\), 즉 \(\mu_1 = \mu_2\).

표본 추정:

\[ \widehat{\psi} = \bar{Y}_1 - \bar{Y}_2 \]

분산:

\[ \text{Var}(\widehat{\psi}) = \sigma^2 \left(\frac{1}{n_1} + \frac{1}{n_2}\right) \]

\(\sigma^2\)\(\text{MS}_W\) 로 추정한 t 통계량:

\[ t = \frac{\widehat{\psi}}{\text{SE}(\widehat{\psi})} = \frac{\bar{Y}_1 - \bar{Y}_2}{\sqrt{\text{MS}_W \left(\frac{1}{n_1} + \frac{1}{n_2}\right)}} \]

이는 동일한 통계량이며, 대비의 일반 형태로 단순 두 그룹 비교가 표현됨을 보여 준다.

9 일반 대비로의 확장 예고

다음 글 A-MAX4-2 에서는 임의의 계수 \(c_1, c_2, \ldots, c_J\) (\(\sum c_j = 0\)) 에 대한 대비를 다룬다. 핵심 일반화:

\[ \widehat{\psi} = \sum_j c_j \bar{Y}_j, \quad \text{Var}(\widehat{\psi}) = \sigma^2 \sum_j \frac{c_j^2}{n_j} \]

\[ t = \frac{\widehat{\psi}}{\sqrt{\text{MS}_W \sum_j c_j^2 / n_j}} \]

두 그룹 비교는 \(c = (1, -1, 0, \ldots)\) 일 때의 특수 사례 다.

10 균형 vs 불균형 설계의 영향

균형 설계 (\(n_1 = n_2 = n_0\)) 에서 식 \((\diamond)\)

\[ E_R - E_F = \frac{n_0}{2} (\bar{Y}_1 - \bar{Y}_2)^2 \]

불균형 설계에서는 가중 평균 \(\widehat{\mu}^*\) 의 형태가 복잡해지지만, 최종 식 \((\diamond)\) 는 동일하게 유지된다. 일반화의 우아함이다.

측면 균형 (\(n_1 = n_2\)) 불균형 (\(n_1 \neq n_2\))
\(\widehat{\mu}^*\) \((\bar{Y}_1 + \bar{Y}_2) / 2\) \((n_1 \bar{Y}_1 + n_2 \bar{Y}_2) / (n_1 + n_2)\)
검정력 (총 \(n\) 고정) 최대 약간 감소
F 식 동일 동일

11 코드 예시 — 두 그룹 비교의 세 표현

import numpy as np
import pandas as pd
from scipy.stats import t as t_dist, f as f_dist
from scipy.stats import ttest_ind
import statsmodels.api as sm
from statsmodels.formula.api import ols

np.random.seed(42)
n_each = 20

# 4 그룹 자료 (그룹 1 vs 2 비교에 집중)
group_1 = np.random.normal(5.0, 1.0, n_each)
group_2 = np.random.normal(5.8, 1.0, n_each)
group_3 = np.random.normal(6.0, 1.0, n_each)
group_4 = np.random.normal(7.0, 1.0, n_each)

groups = ['G1']*n_each + ['G2']*n_each + ['G3']*n_each + ['G4']*n_each
all_data = np.concatenate([group_1, group_2, group_3, group_4])
df = pd.DataFrame({'y': all_data, 'group': groups})

# 1. 표준 two-sample t (그 두 그룹만)
t_two, p_two = ttest_ind(group_1, group_2, equal_var=True)
print(f"Two-sample t (그 두 그룹만): t = {t_two:.3f}, p = {p_two:.4f}")
print(f"  자유도: {2*n_each - 2}")

# 2. ANOVA 의 MS_W 사용한 t
model = ols('y ~ C(group)', data=df).fit()
anova_table = sm.stats.anova_lm(model)
ms_w = anova_table['mean_sq'].iloc[1]
df_w = int(anova_table['df'].iloc[1])

mean_diff = group_1.mean() - group_2.mean()
se_diff = np.sqrt(ms_w * (1/n_each + 1/n_each))
t_anova = mean_diff / se_diff
p_anova = 2 * (1 - t_dist.cdf(abs(t_anova), df_w))
print(f"\nANOVA 후 t (모든 그룹 MS_W): t = {t_anova:.3f}, p = {p_anova:.4f}")
print(f"  자유도: {df_w}")

# 3. 모형 비교 F
F_anova = t_anova**2
p_F = 1 - f_dist.cdf(F_anova, 1, df_w)
print(f"\n모형 비교 F: F = {F_anova:.3f}, p = {p_F:.4f}")
print(f"  F = t² 검증: {np.isclose(F_anova, t_anova**2)}")

# 4. 모형 비교로 직접 계산 — Restricted Model 적합
df['group_restricted'] = df['group'].replace({'G1': 'merged', 'G2': 'merged'})
model_restricted = ols('y ~ C(group_restricted)', data=df).fit()
anova_compare = sm.stats.anova_lm(model_restricted, model)
print(f"\n모형 비교 ANOVA 표:")
print(anova_compare)

이 코드는 세 가지 표현 이 동일한 결과를 줌을 보여 준다.

  1. Two-sample t (그 두 그룹만의 분산)
  2. ANOVA 후 t (모든 그룹 분산 사용)
  3. 모형 비교 F (restricted vs full)

ANOVA 후 t 가 일반적으로 검정력이 더 높다 (자유도가 더 크므로).

12 후속 — 일반 대비

이 글에서는 두 그룹 비교 를 모형 비교로 도출했다. 다음 글 A-MAX4-2 는 임의의 대비 로 일반화한다. 핵심 변화:

  • 계수 \(c_j\)\((1, -1, 0, \ldots)\) 가 아닌 임의의 합 0 패턴
  • 더 풍부한 비교 (예: 한 그룹 vs 나머지, 두 그룹 vs 두 그룹)
  • 직교성 점검의 중요성 (Ch.4.3)

13 관련 주제

선행 지식

후속 주제 (Phase A)

다른 카테고리 연결

Subscribe

Enjoy this blog? Get notified of new posts by email: