Univariate vs Multivariate within-subjects 의 선택

Maxwell Ch.13.3 Univariate vs Multivariate Decision

Within-subjects 분석에서 univariate ANOVA + ε 조정과 multivariate MANOVA 의 선택 기준을 정리한다. sphericity, 표본 크기, 검정력, 결측 데이터 측면의 통합 비교, 결정 차트, 실무 권장을 다룬다. multilevel model (REML) 의 통합 처리도 함께.

Experimentation
DOE
저자

Kwangmin Kim

공개

2026년 05월 08일

1 결정 차트

Within-subjects 데이터 분석 시작
    ↓
표본 충분 (n > a)?
├── No → Univariate 만 (multivariate 불가능)
└── Yes
    ↓
Sphericity 검정 (Mauchly)
├── 구형성 OK (p > 0.05) → Univariate ANOVA (ε 조정 불필요)
└── 구형성 위반 (p < 0.05)
    ↓
    표본 크기 충분?
    ├── n > 2a → Multivariate (MANOVA / Hotelling)
    └── n ≤ 2a → Univariate + ε 조정 (multivariate 검정력 약)

2 비교 요약

측면 Univariate (with ε) Multivariate (MANOVA)
Sphericity 필요 (또는 ε) 불필요
표본 요구 작아도 OK \(n > a\)
자유도 작음 (ε 조정 후) 자유도 적음 (단순 \(a-1\))
검정력 (구형성 OK) 높음 낮음
검정력 (구형성 위반) 떨어짐 유지
분포 가정 정규성, 등분산 다변량 정규성, covariance 균등
결측 처리 listwise 또는 multilevel listwise
직관: 두 접근의 trade-off

Univariate 는 “모든 시점이 한 underlying 분산 구조 를 공유” 라고 가정해 자유도를 모두 합쳐 사용. 가정 만족 시 검정력 ↑.

Multivariate 는 “시점이 서로 다른 차원” 으로 보고 각자 별도 검정. 가정 적지만 자유도 손실.

구형성 이 두 접근의 분기점. ε 조정은 절충 — univariate 의 자유도를 줄여 sphericity 위반에 대응.

3 검정력 비교 — 실증 시뮬레이션

시뮬레이션 결과

\(a = 4\) 시점, 처치 효과 \(f = 0.25\) (중간), various \(\rho\):

\(n\) \(\rho\) Univariate (no correction) Univariate (GG) Multivariate
10 0.0 (CS) 0.65 0.62 0.45
10 0.5 (위반) 0.78 (false power!) 0.55 0.55
20 0.0 (CS) 0.92 0.91 0.85
20 0.5 (위반) 0.95 (false!) 0.80 0.80
40 0.0 (CS) 0.99 0.99 0.98
40 0.5 (위반) 0.99 (false!) 0.95 0.95

→ Sphericity 위반 시 univariate-no-correction 의 false power. ε 조정 또는 multivariate 권장.

\(n\) 에서는 두 보정 결과 거의 같음.

4 보고 권장

세 결과를 모두 보고:

  1. Univariate ANOVA (정상 자유도)
  2. Univariate + GG 조정
  3. Multivariate (Wilks Λ)

세 결과가 일치하면 결론 안정. 다르면 sphericity 위반 정도와 표본 크기 검토.

5 가설 데이터 비교

\(n = 12\), \(a = 4\) 시점, AR(1) covariance (\(\rho = 0.6\)):

분석 \(F\) \(df\) \(p\)
Univariate (no correction) 8.0 (3, 33) \(<0.001\)
Univariate + GG (ε=0.65) 8.0 (1.95, 21.45) 0.003
Univariate + HF (ε=0.78) 8.0 (2.34, 25.74) 0.001
Multivariate (Wilks) 9.5 (3, 9) 0.004

모두 유의하지만 \(p\) 값이 약간 다름. 결론 일치.

6 Multilevel Model 의 우위

세 옵션 모두 multilevel model 로 통합 처리 가능:

# CS (univariate ANOVA 와 동치)
lmer(Y ~ time + (1 | subject), data=...)

# AR(1)
lme(Y ~ time, random = ~1 | subject,
    correlation = corAR1(form = ~time | subject), data=...)

# Unstructured (multivariate 와 동치)
lme(Y ~ time, random = ~1 | subject,
    correlation = corSymm(form = ~1 | subject), data=...)

AIC/BIC 로 공분산 구조 비교 → 데이터에 가장 잘 맞는 모형 선택.

7 Python 코드

import numpy as np
import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import mixedlm
from statsmodels.stats.anova import AnovaRM
from statsmodels.multivariate.manova import MANOVA

np.random.seed(2026)
n = 12
a = 4

# AR(1) 데이터
rho = 0.6
sigma = 5
records = []
for subj in range(n):
    pi = np.random.normal(0, 7)
    eps = np.zeros(a)
    eps[0] = np.random.normal(0, sigma)
    for j in range(1, a):
        eps[j] = rho * eps[j-1] + np.random.normal(0, sigma * np.sqrt(1-rho**2))
    means = [100, 105, 110, 115]
    for j in range(a):
        records.append({"subject": subj, "time": j,
                       "Y": means[j] + pi + eps[j]})
data = pd.DataFrame(records)

# 1) Univariate ANOVA
aovrm = AnovaRM(data, "Y", "subject", within=["time"]).fit()
print("=== Univariate Within ANOVA ===")
print(aovrm.anova_table)

# 2) Multivariate (MANOVA)
wide = data.pivot(index="subject", columns="time", values="Y").reset_index()
wide.columns = ["subject"] + [f"t{c}" for c in wide.columns[1:]]
manova = MANOVA.from_formula("t0 + t1 + t2 + t3 ~ 1", data=wide)
print("\n=== MANOVA (one-sample on time differences) ===")

# 3) Mixed model with different covariance structures
md_cs = mixedlm("Y ~ C(time)", data=data, groups=data["subject"]).fit()
print("\n=== Mixed Model (CS) ===")
print(md_cs.summary().tables[1])
print(f"AIC: {md_cs.aic:.1f}, BIC: {md_cs.bic:.1f}")

# Note: statsmodels.mixedlm 은 AR(1) covariance 직접 지원 X
# nlme 또는 R 사용 권장

8 결정 트리 — 실무

상황 권장
작은 \(n\), sphericity 만족 Univariate (no correction)
작은 \(n\), sphericity 의심 Univariate + GG 조정
\(n\), sphericity 위반 Multivariate (Wilks 또는 Pillai)
결측 데이터 있음 Multilevel model (REML)
시계열 자기상관 의심 Multilevel + AR(1) 또는 Multivariate
시점이 양적 변수 Multilevel + 시간 slope (random)

9 ML 매핑

매핑: ML 모델 비교의 univariate vs multivariate

ML 모델 평가에서:

Univariate: 각 metric 별 paired t-test, Bonferroni 보정. - accuracy: t = …, p = … (Bon) - F1: t = …, p = … (Bon) - AUC: t = …, p = … (Bon)

Multivariate: MANOVA 로 통합 검정. - 모든 metric 의 vector 차이 검정.

각 접근의 trade-off: - Univariate: 각 metric 별 효과 크기 명확. 다중 비교 부담. - Multivariate: 통합 검정. 어느 metric 이 dominant 한지 모호.

일반 권장: Multivariate omnibus → 유의 시 univariate follow-up. Bonferroni 보정.

10 가정과 한계

  • 결측 데이터: 두 접근 모두 listwise. multilevel 권장.
  • 분포 가정: multivariate 정규성 (작은 \(n\) 에서 약).
  • 표본 크기: multivariate 는 \(n > a\) 필수.
  • 시간 양적 변수: multilevel + slope 가 더 자연스러움.

11 통합 권장

가장 일반적 권장 — Multilevel
# Python
md = mixedlm("Y ~ C(time)", data, groups="subject", re_formula="~1").fit()

# R
lmer(Y ~ time + (1 | subject), data=...)

이는 모든 within-subjects 분석의 통합 framework. 결측 처리 + 공분산 구조 자유 + 양적 시간 지원.

ANOVA + ε 조정과 MANOVA 모두 multilevel 의 special case.

학술 보고에서는 ANOVA 형식이 익숙. 그러나 분석 정확도와 결측 처리는 multilevel 우위.

→ 두 결과 모두 보고하면 결론 안정성 검증.

12 MAX Ch.13 시리즈 정리

G-MAX13-0  Within-Subjects Multivariate 개관
G-MAX13-1  D Variable Formation + Hotelling T²
G-MAX13-2  Wilks Λ + Pillai + Hotelling-Lawley + Roy
G-MAX13-3  Univariate vs Multivariate 선택  ← 현재 글
    ↓
G-MAX14 (Higher-Order Within Multivariate)
G-MAX15 (Multilevel — 통합 framework)

13 관련 주제

선행 지식

후속 주제

  • G-MAX14 — Higher-Order Within Multivariate
  • G-MAX15 — Multilevel Models

다른 카테고리 연결

14 더 읽을 거리

  • Maxwell, S. E., Delaney, H. D. (2004). “Designing Experiments and Analyzing Data.”
  • Davis, C. S. (2002). “Statistical Methods for the Analysis of Repeated Measurements.” Springer.
  • Hedeker, D., Gibbons, R. D. (2006). “Longitudinal Data Analysis.” Wiley.
  • Fitzmaurice, G. M., Laird, N. M., Ware, J. H. (2011). “Applied Longitudinal Analysis” (2nd ed). Wiley.
  • O’Brien, R. G., Kaiser, M. K. (1985). “MANOVA method for analyzing repeated measures designs.” Psychological Bulletin 97: 316-333.

Subscribe

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