표 자료의 통합 — Mantel-Haenszel·Peto·Zeros 처리

Woodward Ch.12.5 — Pooling Tabular Data

2x2 표 자료의 meta-analysis 통합 — Inverse Variance, Mantel-Haenszel, Peto OR — 의 수식과 활용을 추상 → 일상어 → 반사실 3 단계 직관으로 풀어낸다. Zero cells 의 처리 (continuity correction, exact methods), 작은 표본의 효율적 통합도 다룬다.

Experimentation
Modeling
저자

Kwangmin Kim

공개

2026년 05월 08일

1 표 자료 통합의 도구

정의: 2x2 Tabular Data

각 연구가 2x2 표:

Event No Event Total
Treatment \(a_i\) \(b_i\) \(n_{1i}\)
Control \(c_i\) \(d_i\) \(n_{0i}\)

Outcome: OR, RR, RD.

2 통합 방법 3 가지

정의: 3 방법
방법 활용
Inverse Variance (IV) 일반 — 큰 표본
Mantel-Haenszel (MH) 작은 표본·zero cells
Peto OR ≈ 1 + 균형

(Woodward, 2014, Ch.12.5).

3 Inverse Variance (IV) for OR

3.1 Log OR 의 분산

\[\text{Var}(\log \hat{\text{OR}}_i) = \frac{1}{a_i} + \frac{1}{b_i} + \frac{1}{c_i} + \frac{1}{d_i}\]

IV 통합: \[\log \hat{\text{OR}}_{\text{pooled}} = \frac{\sum w_i \log \hat{\text{OR}}_i}{\sum w_i}, \quad w_i = 1/v_i\]

3.2 한계

가정 위반: 작은 표본의 IV

작은 표본 + 작은 cell (\(a, b, c, d < 5\)) 시: - \(1/a\) 같은 항이 매우 큼 → SE 폭증. - Zero cell 시 무한대.

3 단계 직관:

  • 추상 정의: IV 가 대표본 정규 근사. 작은 표본에서 부정확.
  • 일상어 비유: 정밀 도구가 매우 작은 측정에서 noise.
  • 반사실 시나리오: MH 또는 Peto 가 작은 표본에 더 robust.

4 Mantel-Haenszel (MH)

정의: MH OR

\[\hat{\text{OR}}_{\text{MH}} = \frac{\sum_i (a_i d_i / n_i)}{\sum_i (b_i c_i / n_i)}\]

여기서 \(n_i = a_i + b_i + c_i + d_i\).

4.1 MH 의 강점

직관 3 단계: MH 의 robust 성질
  • 추상 정의: \(a_i d_i / n_i\) 같은 cross-product 형태가 zero cell 에 robust. 한 cell 이 0 이라도 0 으로 안 가는 경우가 흔함.
  • 일상어 비유: 평균 vs 가중 평균 — 가중이 outlier 에 더 robust.
  • 반사실 시나리오: 자료 자세하지 않거나 (작은 표본) zero cell 흔할 때 IV 보다 MH 우월.

4.2 MH 의 가정

가정 점검: Common OR 가정

MH 도 모든 연구의 진성 OR 동일 가정 (FE).

Random effects MH: 가능하나 less standard.

3 단계 직관:

  • 추상 정의: MH 가 비-IV 형태이지만 FE 가정 동일.
  • 일상어 비유: 가중 방식 다르지만 같은 가정 — 모든 학교 평균 동등.
  • 반사실 시나리오: Heterogeneity 큼 + tabular 자료 → DerSimonian-Laird 의 FE-RE 변환 또는 GLMM.

5 Peto OR

정의: Peto Method

각 연구의 OR 의 log 추정: \[\log \hat{\text{OR}}_i^{\text{Peto}} = \frac{a_i - E_i}{V_i}\]

여기서 \(E_i = (a_i + c_i)(a_i + b_i) / n_i\), \(V_i = E_i (b_i + d_i)(c_i + d_i) / [n_i (n_i - 1)]\).

Pooled (IV-style): \[\log \hat{\text{OR}}_{\text{Peto}} = \frac{\sum (a_i - E_i)}{\sum V_i}\]

5.1 Peto 의 한계

가정 점검: Peto 의 적합 조건

Peto 가 정확한 조건: 1. OR ≈ 1 (작은 효과). 2. 균형 표본 (treatment vs control 비슷한 크기). 3. 사건 흔하지 않음 (rare events).

조건 위반 시 (큰 OR, 비균형 표본) Peto 가 ↑ 편향.

3 단계 직관:

  • 추상 정의: Peto 가 score test 기반 — 귀무 (\(\theta = 0\)) 가까이 정확.
  • 일상어 비유: 작은 신호 분석에 정확한 도구. 큰 신호는 부정확.
  • 반사실 시나리오: 큰 OR (예: > 2.5) 또는 비균형 표본 시 MH 또는 IV 우선.

6 Zero Cells 의 처리

가정 위반: Zero Cell

\(a_i = 0\) 또는 \(b_i = 0\) 등 — IV 의 \(1/0\) 무한대.

해결 4 가지:

1. Continuity correction (단순): 모든 cell 에 0.5 추가.

2. Empirical correction: 표본 크기 비례 correction.

3. Exact methods: MH 또는 Peto (zero cell 처리 가능).

4. Logistic regression: 모든 자료 합산 후 회귀 (zero cell 자연 처리).

6.1 0.5 Correction 의 한계

가정 위반: Continuity Correction 의 bias

가설: \(a_i = 0, b_i = 100, c_i = 5, d_i = 95\). 0.5 correction → \(a = 0.5, b = 100.5, c = 5.5, d = 95.5\).

문제: - 0.5 추가가 효과 ↑ 또는 ↓ 편향. - 작은 표본에서 큰 영향.

3 단계 직관:

  • 추상 정의: 0.5 가 임의 — 다른 값 (0.1, 1.0) 사용 시 결과 변동.
  • 일상어 비유: 측정 도구의 자의 보정 — 정확성 ↓.
  • 반사실 시나리오: MH 또는 logistic regression 이 더 robust. Sweeting 의 empirical correction 도 대안.

7 사례 — 백신 효과의 통합

사례: 5 RCT 의 백신 효과
연구 \(a\) (백신+사례) \(b\) (백신+무사) \(c\) (대조+사례) \(d\) (대조+무사)
1 5 495 25 475
2 0 200 8 192
3 12 988 50 950
4 3 297 15 285
5 1 99 6 94

연구 2 의 zero cell (\(a = 0\)) — IV 부적절.

MH OR: \[\hat{\text{OR}}_{\text{MH}} = \frac{\sum a_i d_i / n_i}{\sum b_i c_i / n_i}\]

= \((5 \cdot 475/1000 + 0 \cdot 192/400 + 12 \cdot 950/2000 + 3 \cdot 285/600 + 1 \cdot 94/200) / (\ldots)\) = \(\ldots / \ldots\) ≈ 0.20 (백신이 사례 위험 0.20 배).

해석: 백신이 80% 사례 감소.

3 단계 직관:

  • 추상 정의: MH 가 zero cell (\(a=0\)) 자연 처리 — IV 의 무한대 회피.
  • 일상어 비유: 5 명 중 0 명 사례 발생 — 평균 계산에서 그 군 무시 안 함.
  • 반사실 시나리오: IV 시 0.5 correction 강제 → 결과 약간 다름. MH 가 정직.

8 코드 예시 — 표 자료 통합

import numpy as np
import pandas as pd

studies = pd.DataFrame({
    "a": [5, 0, 12, 3, 1],
    "b": [495, 200, 988, 297, 99],
    "c": [25, 8, 50, 15, 6],
    "d": [475, 192, 950, 285, 94],
})
studies["n"] = studies[["a", "b", "c", "d"]].sum(axis=1)

# MH OR
num = (studies["a"] * studies["d"] / studies["n"]).sum()
den = (studies["b"] * studies["c"] / studies["n"]).sum()
OR_MH = num / den
print(f"MH OR = {OR_MH:.3f}")

# Peto
studies["E"] = (studies["a"] + studies["c"]) * (studies["a"] + studies["b"]) / studies["n"]
studies["V"] = (studies["E"] * (studies["b"] + studies["d"]) * (studies["c"] + studies["d"])
                / (studies["n"] * (studies["n"] - 1)))
log_OR_Peto = (studies["a"] - studies["E"]).sum() / studies["V"].sum()
OR_Peto = np.exp(log_OR_Peto)
print(f"Peto OR = {OR_Peto:.3f}")

# IV with 0.5 correction
studies_corr = studies.copy()
for col in ["a", "b", "c", "d"]:
    studies_corr[col] = studies_corr[col] + 0.5
studies_corr["log_OR"] = np.log(studies_corr["a"] * studies_corr["d"] /
                                 (studies_corr["b"] * studies_corr["c"]))
studies_corr["v"] = (1/studies_corr["a"] + 1/studies_corr["b"]
                     + 1/studies_corr["c"] + 1/studies_corr["d"])
studies_corr["w"] = 1 / studies_corr["v"]
log_OR_IV = (studies_corr["w"] * studies_corr["log_OR"]).sum() / studies_corr["w"].sum()
OR_IV = np.exp(log_OR_IV)
print(f"IV OR (with 0.5 correction) = {OR_IV:.3f}")

해석: 세 방법의 결과 비교. Zero cell 자료에서 MH 와 Peto 가 robust.

9 Logistic Regression 통합 — 대안

정의: Pooling via Logistic Regression

모든 연구 자료를 long-format 으로 통합 후 logistic regression.

\[\text{logit}(P(Y_{ij} = 1)) = \alpha_i + \beta X_{ij}\]

여기서: - \(i\) = study, \(j\) = subject. - \(\alpha_i\) = study-specific intercept (fixed or random effect). - \(\beta\) = pooled OR (log scale).

장점: - Zero cells 자연 처리. - Continuous covariate 가능. - Multiple covariates 통합.

직관 3 단계: Logistic Pooling 의 가치
  • 추상 정의: 표 자료 → 개별 자료 환원 → 회귀 적합. 모든 통계 도구 활용 가능.
  • 일상어 비유: 합산 자료 → 개별 자료 펼친 후 회귀. 더 풍부한 분석.
  • 반사실 시나리오: 단순 합산 (MH) 만 시 다중 covariate·interaction 분석 어려움. Logistic 이 일반화.

9.1 Random Effects Logistic — GLMM

각 study 의 random intercept 추가:

\[\alpha_i \sim N(\alpha_0, \sigma_\alpha^2)\]

이는 GLMM (Generalized Linear Mixed Model) — RE meta-analysis 의 일반화.

직관: GLMM 의 통합력
  • 추상 정의: Logistic + random effect = study heterogeneity 자연 처리.
  • 일상어 비유: 학교별 평균 점수의 random effect 와 학생 단위 회귀.
  • 반사실 시나리오: GLMM 이 IPD meta-analysis 의 표준 도구. AD 자료라면 단순 IV/MH.

10 Q&A — Tabular Pooling 의 흔한 오해

Q1: 0.5 correction 은 항상 보수적인가?

A: 아니다. 작은 자료에서 의외로 효과 부풀려 가능.

3 단계 직관:

  • 추상 정의: 0.5 가 임의 — 작은 cell 에서 큰 영향.
  • 일상어 비유: 작은 측정값에 1 단위 추가 — 큰 비례 영향.
  • 반사실 시나리오: Empirical correction (Sweeting et al., 2004) 또는 MH 가 더 robust.
Q2: 한 연구가 zero cells 다 — 제외?

A: 아니다. 정보 손실. MH 또는 Peto 사용.

3 단계 직관:

  • 추상 정의: 0/N 자료가 정보 가짐 (event 가 작거나 없음).
  • 일상어 비유: 0 사고 회사도 안전성 정보 — 무시 안 됨.
  • 반사실 시나리오: Zero cell 연구 제외 시 publication bias 와 같은 selective. MH 가 정직.
Q3: MH 와 IV 결과 차이 큼 — 어느 것?

A: 작은 자료 + zero cells 시 MH, 큰 자료 시 IV.

3 단계 직관:

  • 추상 정의: MH 가 zero cells 에 robust, IV 가 큰 자료에 효율.
  • 일상어 비유: 작은 학교 평균 (MH 안전) vs 큰 학교 평균 (IV 효율).
  • 반사실 시나리오: 차이 큼 → small study effect 의심. Sensitivity 분석으로 점검.

11 결론

표 자료 통합 시 작은 표본·zero cells 에 robust 한 MH 가 표준. Peto 는 OR ≈ 1 + 균형 시 효율. 0.5 correction 은 차선 (편향 위험). Logistic regression / GLMM 통합도 대안 — 다중 covariate + RE 자연 처리.

다음 글 (H-WOO12-7) 에서 IPD 와 study quality 를 본다.

12 관련 주제

Subscribe

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