ANCOVA 의 대안 — Change Score · Residual ANOVA · Blocking

Maxwell Ch.9.3 Alternatives to ANCOVA: Change Score, Residual ANOVA, Blocking

ANCOVA 의 가정 (회귀 동질성, 선형성) 이 깨질 때 사용하는 대안 — change score 분석, residual ANOVA, blocking design — 의 적용 조건과 함정을 정리한다. baseline 을 통제하는 네 가지 접근의 trade-off 를 통합 비교한다.

Experimentation
DOE
저자

Kwangmin Kim

공개

2026년 05월 08일

1 정의

정의: ANCOVA 의 4 가지 baseline 통제 접근
방법 적용 조건
ANOVA on \(Y\) (보정 없음) \(Y_{ij} = \mu + \alpha_j + \varepsilon\) baseline 무관
ANCOVA \(Y = \mu + \alpha_j + \beta(X - \bar X) + \varepsilon\) 회귀 동질성, \(\beta\) 데이터 추정
Change Score \(D = Y - X = \mu + \alpha_j + \varepsilon\) \(\beta = 1\) 가정
Residual ANOVA \(\hat r = Y - \hat\beta_{\text{global}} X\) on group 별도 \(\beta\) 추정 후 잔차에 ANOVA
Blocking block 단위로 그룹화 후 RBD \(X\) 를 분류 변수화 (이산화)

2 Change Score Analysis

2.1 정의

\(D_{ij} = Y_{ij} - X_{ij}\) (처치 후 - 처치 전) 을 새 응답 변수로 두고 ANOVA.

\[ D_{ij} = \mu_D + \alpha_j + \varepsilon_{ij} \]

처치 효과 검정 = \(D\) 의 그룹 평균 비교.

2.2 가정

  • \(X\)\(Y\) 의 관계가 기울기 1 의 선형 (\(\beta = 1\)).
  • \(X\) 의 측정 단위가 \(Y\) 와 동일 (예: 둘 다 SBP 측정).

2.3 장점

  • 단순. 통계 패키지 없이 손계산 가능.
  • \(\beta\) 추정이 필요 없음 → 자유도 절약.
  • \(X\) 의 측정 오차 영향 최소 (오차가 \(D\) 에서 일부 상쇄).

2.4 단점

  • \(\beta = 1\) 가정 위반 시 편향. 실제 \(\beta < 1\) (회귀 효과) 이면 change score 가 처치 효과를 과소·과대 추정.
  • baseline 과 change 가 음의 상관 — “회귀 평균 (regression to the mean)” 으로 인한 허위 효과.

2.5 언제 적합한가

  • \(X\)\(Y\)같은 변수의 시점만 다른 측정 (예: 사전·사후 SBP).
  • \(\beta \approx 1\) 이 도메인적으로 합리적.
  • 표본이 작아 \(\beta\) 추정이 불안정.
함정: 회귀 평균 (Regression to the Mean)

baseline 이 평균보다 매우 낮은/높은 사람은 다음 측정에서 평균에 가까이 회귀하는 경향 (통계적 현상). 이는 처치 효과가 아니다. Change score 는 baseline 자체를 무시하므로 회귀 평균이 처치 효과로 잘못 잡힐 수 있다. ANCOVA 는 baseline 을 회귀 항으로 통제하므로 이 효과를 일부 제거 — 이것이 ANCOVA 의 일반 우위.

3 Residual ANOVA

3.1 정의

전체 데이터로 회귀 \(Y \sim \beta X\) 를 fit, 잔차 \(\hat r = Y - \hat\beta X\) 를 계산. 이 잔차에 ANOVA.

\[ \hat r_{ij} = Y_{ij} - \hat\beta_{\text{global}} X_{ij} \] \[ \hat r_{ij} = \mu_r + \alpha_j + \varepsilon_{ij} \]

3.2 차이점 (vs ANCOVA)

ANCOVA 와 Residual ANOVA 는 동일하지 않다.

ANCOVA Residual ANOVA
\(\beta\) 추정 그룹 효과를 통제한 후 (within-group regression) 그룹 정보 무시 (overall regression)
처치 효과 추정 정확 일반적으로 편향
자유도 \(N - a - 1\) \(N - 2\) (잔차로 ANOVA 시)
권장 일반적 비추천 (이유: 그룹 정보를 두 번 사용)
함정: Residual ANOVA 는 일반적으로 편향됨

전체 회귀 \(\hat\beta_{\text{global}}\) 는 그룹 간 평균 차이의 일부를 회귀 효과로 흡수 한다. 따라서 잔차에는 처치 효과가 약화된 상태로 남고, 그 잔차의 ANOVA 가 처치 효과를 과소 추정한다. ANCOVA 가 거의 항상 더 정당 (within-group \(\beta\) 추정).

4 Blocking

4.1 정의

공변량 \(X\) 를 이산 levels 로 분할 (예: 분위수, 사분위수) 하여 block 변수로 만든다. 이후 Randomized Block Design (RBD) 로 분석.

baseline X → quartile blocks (Q1, Q2, Q3, Q4) → 각 block 내 random assignment to 처치

분석 모형:

\[ Y_{ijk} = \mu + \alpha_j + \beta_k^{\text{block}} + \varepsilon_{ijk} \]

4.2 장점

  • 회귀 동질성 가정 불필요 — block 별로 그룹 평균 비교.
  • baseline 과 응답의 비선형 관계도 일부 처리 가능 (block 별 효과 추정).
  • 사전 설계 단계에서 block 결정 가능 (matched-pair design 의 일반화).

4.3 단점

  • 정보 손실: 공변량의 연속 정보를 이산화 → ANCOVA 보다 검정력 ↓ (보통 10~20%).
  • block 수 결정 trade-off: 많으면 자유도 부족, 적으면 block 내 분산 큼.

4.4 언제 적합한가

  • \(X\)\(Y\) 의 관계가 명백히 비선형.
  • 사전 설계 시 baseline 으로 균형 배정 가능 (RCT 설계 단계).
  • 연구자가 ANCOVA 보다 RBD 의 전통에 익숙.

5 4 가지 접근의 trade-off 표

접근 \(\beta\) 가정 회귀 동질성 비선형성 검정력 권장 시
ANOVA only 0 (무관) 낮음 \(X \perp Y\) (드묾)
ANCOVA 데이터 추정 필요 위반 가장 높음 일반 RCT, \(\beta\) 동일
Change Score 1 불필요 부분 처리 중간 \(X, Y\) 동일 변수, \(\beta \approx 1\)
Residual ANOVA 데이터 추정 (overall) ANCOVA 보다 ↓ 거의 비추천
Blocking 비모수 불필요 처리 ANCOVA 보다 약간 ↓ 비선형, 사전 설계

6 Maxwell SBP 데이터로 4 접근 비교

가설: 3 그룹 (A, B, Control), 각 \(n=10\), baseline \(X\), post \(Y\).

접근 \(F\) \(df\) \(p\)
ANOVA on \(Y\) 12.0 2, 27 0.0002
ANCOVA 25.0 2, 26 \(<0.0001\)
Change Score \(D\) 18.0 2, 27 \(<0.0001\)
Residual ANOVA 15.0 2, 27 \(<0.0001\)
Blocking (4 quartiles) 22.0 2, 24 \(<0.0001\)

ANCOVA 가 가장 강한 검정력. Blocking 이 그 다음. Change Score 는 \(\beta=1\) 가정의 손실로 약간 낮음.

7 Python 코드

import numpy as np
import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import ols
from scipy import stats

# Maxwell-style data: 3 groups, baseline X, post Y
np.random.seed(2026)
groups = ["A", "B", "Control"]
n_per = 30
beta_true = 0.6
mu_X = {"A": 165, "B": 158, "Control": 162}
treatment_eff = {"A": -20, "B": -10, "Control": 0}

records = []
for g in groups:
    X = np.random.normal(mu_X[g], 7, n_per)
    Y = (mu_X[g] * (1 - beta_true) + beta_true * X + treatment_eff[g]
         + np.random.normal(0, 4, n_per))
    for x, y in zip(X, Y):
        records.append({"group": g, "X": x, "Y": y, "D": y - x})

data = pd.DataFrame(records)

# 1) ANOVA on Y
m1 = ols("Y ~ C(group, Sum)", data=data).fit()
print("=== ANOVA on Y ===")
print(sm.stats.anova_lm(m1, typ=2).round(3))

# 2) ANCOVA
m2 = ols("Y ~ C(group, Sum) + X", data=data).fit()
print("\n=== ANCOVA ===")
print(sm.stats.anova_lm(m2, typ=2).round(3))
print(f"  beta_hat = {m2.params['X']:.3f}")

# 3) Change score
m3 = ols("D ~ C(group, Sum)", data=data).fit()
print("\n=== Change Score ANOVA ===")
print(sm.stats.anova_lm(m3, typ=2).round(3))

# 4) Residual ANOVA (NOT recommended — for comparison)
beta_global = sm.OLS(data["Y"], sm.add_constant(data["X"])).fit().params[1]
data["resid"] = data["Y"] - beta_global * data["X"]
m4 = ols("resid ~ C(group, Sum)", data=data).fit()
print("\n=== Residual ANOVA (biased!) ===")
print(sm.stats.anova_lm(m4, typ=2).round(3))

# 5) Blocking (quartiles)
data["block"] = pd.qcut(data["X"], 4, labels=["Q1", "Q2", "Q3", "Q4"])
m5 = ols("Y ~ C(group, Sum) + C(block, Sum)", data=data).fit()
print("\n=== Blocking (quartile) ===")
print(sm.stats.anova_lm(m5, typ=2).round(3))

8 결정 절차

baseline X 가 있는가?
├── No → ANOVA on Y
└── Yes
    ├── X 와 Y 가 동일 변수 (사전·사후)?
    │   └── Yes → β ≈ 1 인가?
    │            ├── Yes → Change Score 또는 ANCOVA (선택)
    │            └── No  → ANCOVA
    └── X 와 Y 가 다른 변수?
        └── X 와 Y 의 관계가 선형?
            ├── Yes → ANCOVA (회귀 동질성 검정)
            │        ├── 동질성 OK → ANCOVA 채택
            │        └── 동질성 위반 → Johnson-Neyman 또는 Blocking
            └── No  → Blocking 또는 다항식 회귀

9 가정과 한계 — 종합

  • ANCOVA: 일반 권장. 회귀 동질성 + 선형성 점검.
  • Change Score: \(\beta = 1\) 합리적인 동일 변수 사전·사후만.
  • Residual ANOVA: 일반적 비추천. ANCOVA 또는 Blocking 으로 대체.
  • Blocking: 비선형·비모수 상황. 사전 설계 단계에서 결정.

모든 접근의 공통 한계: 인과 효과 추정에는 무작위 배정 또는 추가 가정 필요. 관찰 연구에서는 어느 보정 방법도 selection bias 를 자동 제거하지 못함.

10 MAX Ch.9 시리즈 정리

G-MAX9-0  ANCOVA 개관 — 분산 감소·편향 보정의 두 동기
G-MAX9-1  Linear Model + Homogeneity of Regression
G-MAX9-2  Adjusted Means + Lord's Paradox
G-MAX9-3  Change Score · Residual ANOVA · Blocking  ← 현재 글
    │
    ▼
G-MAX10 (Random/Nested), G-MON8 (ANCOVA·Transformation)

11 관련 주제

선행 지식

후속 주제

  • G-MAX10-0 — Random/Nested 개관 (작성 예정)
  • G-MON8-0 — ANCOVA·Transformation (작성 예정)
  • G-MON2 — Complete Block Designs (작성 예정)

다른 카테고리 연결

Subscribe

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