Case-control 시험의 표본 크기 (matched 포함)

Woodward 8.7 — 사후 결과 기반 연구 설계의 표본 크기 산정

Woodward Ch.8.7 의 case-control 시험 표본 크기 산정을 정리한다. Cohort 와 다른 점, exposure prevalence 의 역할, OR 기반 공식, matched case-control 의 설계 효과, 비대칭 case:control 비율을 다룬다.

Experimentation
Fundamentals
저자

Kwangmin Kim

공개

2026년 05월 08일

1 도입 — Cohort 와 다른 표본 크기 산정

Case-control 시험은 결과 (case 또는 control) 가 사전에 정해지고, exposure 가 측정 된다 (역방향). 이 역설계 가 표본 크기 산정에도 영향을 준다.

2 Case-Control 의 구조

정의: Case-Control 시험
  • Case: 결과 (질병, 사건) 발생 환자
  • Control: 결과 발생하지 않은 사람 (case 와 비슷한 모집단)
  • 측정: 두 그룹의 과거 exposure 비교

이는 cohort 의 역방향 — cohort 는 exposure → outcome, case-control 은 outcome → exposure.

2.1 Cohort vs Case-Control

측면 Cohort Case-Control
시간 방향 전향 (forward) 후향 (backward)
측정 Exposure → Outcome Outcome → Exposure
표본 추출 Exposure 기반 Outcome 기반
효과 측정 RR (가능) OR (RR 추정에 사용)
희귀 결과 비효율 효율적
사례 코호트 추적 환자-대조군 비교

3 표본 크기 공식

정의: Case-Control 표본 크기 (1:1 비율)

Case 와 control 각 그룹에서 exposure 비율 비교. \(p_0\) = control 의 exposure 비율, \(p_1\) = case 의 exposure 비율.

\[ n_{\text{per group}} = \frac{(z_{1-\alpha/2} \sqrt{2 \bar{p}(1-\bar{p})} + z_{1-\beta} \sqrt{p_0(1-p_0) + p_1(1-p_1)})^2}{(p_1 - p_0)^2} \]

여기서 \(\bar{p} = (p_0 + p_1)/2\).

3.1 사례 — 흡연과 폐암

흡연이 폐암 위험을 증가시키는지 case-control 로 검정.

  • 일반 모집단의 흡연율 \(p_0 = 0.20\) (control 의 추정)
  • 폐암 환자의 흡연율 \(p_1 = 0.50\) (case 의 가설)
  • \(\alpha = 0.05\) 양측, power = 0.80

\[ \bar{p} = (0.20 + 0.50)/2 = 0.35 \]

\[ n = \frac{(1.96 \sqrt{2 \cdot 0.35 \cdot 0.65} + 0.84 \sqrt{0.20 \cdot 0.80 + 0.50 \cdot 0.50})^2}{(0.50 - 0.20)^2} \]

\[ = \frac{(1.96 \cdot 0.6745 + 0.84 \cdot 0.640)^2}{0.09} \]

\[ = \frac{(1.322 + 0.538)^2}{0.09} = \frac{3.46}{0.09} \approx 38.4 \to 39 \]

각 그룹 39 명, 총 78 명.

4 OR 기반 공식

Exposure 비율 대신 OR 사용:

\[ \text{OR} = \frac{p_1 (1 - p_0)}{p_0 (1 - p_1)} \]

흡연 사례: \(\text{OR} = \frac{0.50 \cdot 0.80}{0.20 \cdot 0.50} = \frac{0.40}{0.10} = 4.0\).

OR = 4.0 는 흡연자가 비흡연자보다 폐암 4 배 odds. 매우 큰 효과.

4.1 OR 직접 입력

\(p_0\) 와 OR 가 주어졌을 때 \(p_1\) 도출:

\[ p_1 = \frac{p_0 \cdot \text{OR}}{1 + p_0 (\text{OR} - 1)} \]

이 식으로 \(p_1\) 을 자동 계산 후 표본 공식 적용.

5 비대칭 비율 — Multiple Controls

Case 가 희귀 한 경우 (예: 희귀 질환), case 1 명에 대해 여러 control 을 매칭.

비대칭 비율 표본 크기

\(r\) controls per case 일 때:

\[ n_{\text{cases}} = \frac{(z_{1-\alpha/2} + z_{1-\beta})^2 [p_0(1-p_0)/r + p_1(1-p_1)]}{(p_1 - p_0)^2} \]

총 표본: \(n_{\text{cases}} \cdot (1 + r)\).

5.1 검정력 비교

같은 \(n_{\text{cases}}\) 에서 \(r\) 변화:

\(r\) (controls per case) 상대 검정력
1 100 % (기준)
2 약 116 % (16 % 향상)
3 약 122 %
4 약 126 %
5 약 129 %
10 약 134 %

\(r\) 증가의 수확체감. \(r = 4\) 부터 추가 효익 미미. 일반적으로 \(r = 4\) 권장.

직관 — 왜 \(r\) = 4 가 표준인가

Case 가 희귀 하고 비싼 경우 (예: 특정 암 환자), 추가 case 는 어려움. 그러나 control 은 비교적 쉬운 모집단에서 추출.

\(r\) 을 늘리면 control 분산 추정 정확. 그러나 \(r > 4\) 부터는 case 분산이 제약 요인 이 되어 추가 control 이 무의미.

따라서 4:1 (4 controls per case) 이 효율 극대화 의 표준 비율.

A/B 테스트 매핑: 처치군 노출이 제한적 (예: 신규 디자인의 위험성으로 5 % 만 노출), 대조군이 95 % 인 비대칭 시나리오. 이때 처치군 → case, 대조군 → control 비유 가능.

6 Matched Case-Control

각 case 를 유사한 특성 의 control 과 매칭하는 설계. 매칭 변수 (연령, 성별, 거주 지역 등) 의 교란 효과 회피.

6.1 표본 크기

매칭된 자료의 분석은 Conditional Logistic Regression 사용. 표본 크기 공식이 다르다.

Matched Case-Control 표본 크기 (1:1 매칭)

\[ n_{\text{pairs}} = \frac{(z_{1-\alpha/2} \sqrt{p_d(1-p_d)} + z_{1-\beta} \sqrt{p_d^*(1-p_d^*)})^2}{(p_d^* - p_d)^2} \]

여기서 \(p_d\)exposed-discordant pairs 의 비율 (한쪽만 exposure 인 매칭 쌍의 비율).

6.2 1:1 매칭의 효율성

매칭이 교란 을 통제하므로, 같은 \(n\) 에서 unmatched 보다 검정력 높음 (교란 강도에 의존).

매칭 비효율 시점: 매칭 변수가 outcome 과 무관 하면 매칭이 검정력 손실. 따라서 매칭 변수를 신중히 선택.

7 Cohort 와 표본 크기 비교

같은 가설 (흡연 → 폐암) 에 대해 cohort vs case-control 표본 크기:

7.1 Cohort

흡연자와 비흡연자에서 폐암 발생 추적. 일반적으로 폐암 발생률이 낮음 (예: 비흡연자 1 %, 흡연자 4 %).

\[ n_{\text{per}}^{\text{cohort}} = \frac{(z_{1-\alpha/2} + z_{1-\beta})^2 [p_T(1-p_T) + p_C(1-p_C)]}{(p_T - p_C)^2} \]

\[ = \frac{(1.96+0.84)^2 [0.04 \cdot 0.96 + 0.01 \cdot 0.99]}{(0.03)^2} = \frac{7.84 \cdot 0.04830}{0.0009} \approx 421 \]

각 그룹 421 명. 그런데 발생률이 낮음추적 기간 길어야 의미 있음.

7.2 Case-Control

폐암 환자와 일치 control 의 흡연 비율 비교.

\[ n_{\text{per}}^{\text{case-control}} \approx 39 \text{ (위 사례)} \]

case-control 이 훨씬 적은 표본 사용. 희귀 outcome 에서 case-control 의 효율성.

직관 — 왜 case-control 이 효율적인가

희귀 결과 시나리오:

  • Cohort: 1 % 발생률 → 100 명 추적해야 1 case 관측
  • Case-control: 직접 1 case 추출 후 매칭

100 cases + 100 controls = 200 명으로 case-control 가능. Cohort 는 100 cases 얻으려면 10000 명 추적 필요.

따라서 희귀 outcome (암, 희귀 질환) 에서는 case-control 이 표준. 일반 결과 (흔한 질환) 에서는 cohort 가 인과 추론 에 더 유리.

8 코드 예시 — Case-Control 표본 크기

import numpy as np
from scipy.stats import norm

def n_case_control(p0, p1, ratio=1, alpha=0.05, power=0.80, two_sided=True):
    """Case-control 표본 크기 (case:control = 1:ratio)"""
    z_a = norm.ppf(1 - alpha/2 if two_sided else 1 - alpha)
    z_b = norm.ppf(power)
    if ratio == 1:
        p_bar = (p0 + p1) / 2
        num = (z_a * np.sqrt(2*p_bar*(1-p_bar)) +
               z_b * np.sqrt(p0*(1-p0) + p1*(1-p1)))**2
        return num / (p1 - p0)**2
    else:
        # 비대칭 비율
        num = (z_a + z_b)**2 * (p0*(1-p0)/ratio + p1*(1-p1))
        return num / (p1 - p0)**2

def or_to_p1(p0, OR):
    """Odds ratio 와 p0 에서 p1 도출"""
    return p0 * OR / (1 + p0 * (OR - 1))

# 흡연-폐암 사례
p0 = 0.20  # 일반 흡연율
p1 = 0.50  # 폐암 환자 흡연율
n = n_case_control(p0, p1)
print(f"흡연-폐암 (1:1 매칭): n_per = {np.ceil(n):.0f}")

# 비대칭 비율
print("\n비대칭 비율 (희귀 case 시나리오):")
for r in [1, 2, 3, 4, 5, 10]:
    n_case = n_case_control(p0, p1, ratio=r)
    total = np.ceil(n_case) * (1 + r)
    print(f"  case:control = 1:{r}, n_cases = {np.ceil(n_case):.0f}, 총 = {total:.0f}")

# OR 기반
print("\nOR 기반 (p0 = 0.10):")
for OR in [1.5, 2.0, 3.0, 4.0, 5.0]:
    p1_est = or_to_p1(0.10, OR)
    n = n_case_control(0.10, p1_est)
    print(f"  OR = {OR}: p1 = {p1_est:.3f}, n_per = {np.ceil(n):.0f}")

9 Matched Case-Control 자세히

9.1 Matching 의 통계적 의미

Matching 의 효과

매칭 변수가 outcome 과 강하게 연관 될 때 검정력 향상.

매칭 효율 (relative efficiency): \[ \text{RE} = \frac{1}{1 - \rho^2} \]

여기서 \(\rho\) 는 매칭 변수와 outcome 의 상관.

\(\rho\) RE
0.0 1.00 (효과 없음)
0.3 1.10 (10 % 향상)
0.5 1.33
0.7 1.96
0.9 5.26

따라서 강한 매칭 변수 가 효율적 (예: 연령, 성별).

9.2 Optimal Matching Ratio

비대칭 비율 (\(r\) controls per case) 의 최적값:

import numpy as np

def relative_efficiency(r):
    """1:1 대비 1:r 의 상대 효율"""
    return 2 * r / (r + 1)

for r in [1, 2, 3, 4, 5, 10, 20]:
    re = relative_efficiency(r)
    print(f"1:{r} 매칭의 효율: {re:.3f}")
비율 효율 (1:1=1.0 기준) Case 수 절감
1:1 1.000 0 %
1:2 1.333 25 %
1:3 1.500 33 %
1:4 1.600 38 %
1:5 1.667 40 %
1:10 1.818 45 %
1:∞ 2.000 50 % (이론적 한계)

비율 증가의 수확 체감 명확. 1:4 가 일반적인 최적 (case 비용 ↑ 시).

9.3 Matching 의 함정

직관 — Over-matching 과 매칭 변수 선택

매칭 변수는 outcome 과 연관 되어야 함. 그러나 exposure 와 강하게 연관 된 매칭 변수는 위험 (over-matching).

예: 폐암 case-control 에서 직장 환경 으로 매칭 → 직장 환경이 흡연과 연관 → 흡연 효과 과소 추정.

매칭 변수 선택 원칙: 1. Outcome 과 연관 (강한 confounder) 2. Exposure 와 연관 X 또는 약함 3. 연구 가설과 무관

A/B 테스트의 stratification 도 같은 원리. 사용자 segment 가 outcome 과 연관 되어야 효율, variant 와 연관 되면 imbalance.

10 사례 — 흡연-폐암 시험 자세히

10.1 Doll & Hill 1950 — 흡연-폐암 case-control

배경: 1940 년대 폐암 급증. 원인 불명.

설계: - Cases: 폐암 환자 1465 명 (런던 병원) - Controls: 비암 환자 1465 명 (같은 병원, 1:1 매칭) - 매칭 변수: 연령 ± 5 년, 성별 - 측정: 흡연 이력 (인터뷰)

결과: - Cases 의 흡연자 비율: 99.7 % - Controls 의 흡연자 비율: 95.8 % - OR ≈ 14 (heavy smokers vs non-smokers)

이 시험이 흡연-폐암 인과 관계 의 첫 강한 증거. 후속 cohort 시험 (Hammond, Doll-Peto) 이 인과 입증.

10.2 Bradford Hill Criteria

이 시험을 계기로 Bradford Hill 이 인과 추론 9 기준 정식화 (1965):

  1. Strength of association
  2. Consistency
  3. Specificity
  4. Temporality
  5. Biological gradient
  6. Plausibility
  7. Coherence
  8. Experiment
  9. Analogy

이 기준이 역학 인과 추론의 표준. 각 기준이 case-control 시험 설계 에 영향.

11 Case-Control 의 함정

11.1 Selection Bias

Selection Bias in Case-Control

Case 와 control 의 선택 이 exposure 와 연관 → 편향.

흔한 형태:

  • Berkson’s bias: 병원 cases vs 병원 controls — 병원 입원 자체가 exposure 와 연관 가능
  • Recall bias: Cases 가 controls 보다 exposure 를 더 잘 기억 (질병 후 회상의 편향)
  • Healthy worker effect: Worker 모집단의 비교가 일반 모집단과 다름

11.2 회피 방법

  1. Hospital-based 보다 population-based controls 선호
  2. Multiple control sources (병원 + 일반 모집단)
  3. Blinded interview — 인터뷰어가 case/control 모름
  4. Standardized questionnaire — Recall bias 줄임

12 Nested Case-Control

Nested Case-Control

대규모 코호트 시험 안에서 발생한 cases 와 무작위 controls 비교.

장점: - Selection bias 최소 (코호트 내 무작위 선택) - 비싼 측정 만 case + control 에 수행 (예: 유전체 분석) - 시간 정보 활용 (코호트의 추적 시간)

표본 크기: 코호트 표본 크기 + matching ratio 결정.

12.1 Framingham 예시

Framingham Heart Study 의 nested case-control:

  • 코호트: 5209 명 추적 70 년+
  • Cases: 심근경색 발생자
  • Controls: 코호트 내 무작위 비-MI

nested 설계가 비싼 유전체 분석 + 바이오마커 측정 의 비용 효율.

13 Conditional vs Unconditional Logistic Regression

매칭 자료 분석:

Matched Analysis 의 두 방법

Conditional Logistic Regression: \[ \log \frac{p_i}{1-p_i} = \alpha_i + \beta X_i \]

매칭 stratum 마다 별도 절편 \(\alpha_i\). Stratum 효과를 조건부 처리.

Unconditional Logistic Regression:

매칭 변수를 공변량으로 포함하여 일반 회귀.

차이: - Conditional: 매칭 보존, 작은 stratum 에 적합 - Unconditional: 매칭 변수 효과도 추정, 큰 stratum 에 적합

매칭 자료에서는 일반적으로 Conditional Logistic Regression 권장.

14 A/B 테스트의 Case-Control 매핑

A/B 테스트에서 case-control 격 분석은 드물지만 retrospective 분석 에 적용:

14.1 시나리오 — Churn 분석

Cases: 이탈한 사용자 (churned)
Controls: 활성 사용자 (matched on tenure + segment)
Exposure: 신규 기능 사용 여부

분석: 신규 기능 사용이 churn 과 *연관* 되는가?
방법: Matched logistic regression (conditional)

이 retrospective 분석이 RCT 가 아닌 인과 추론. 무작위 배정 없으므로 교란 의심 항상.

15 Case-Control 의 한계

  1. Recall bias — Cases 의 회상 편향
  2. Temporal ambiguity — Exposure → outcome 시간 순서 명확 X (cross-sectional 측정)
  3. Selection bias — Control 선택의 어려움
  4. OR 만 추정 — RR 직접 추정 불가 (희귀 outcome 외)
  5. Confounding — 매칭 외 confounder 통제 어려움

이 한계로 RCT 또는 cohort 가 인과 추론에 우월. Case-control 은 희귀 outcome + 비용 제약 에서만.

16 후속 — 복잡 표집과 결론

다음 글 A-WOO8-5 는 cluster sampling, stratified sampling 등 복잡 설계의 표본 크기를 다룬다.

17 관련 주제

선행 지식

후속 주제 (Phase A)

  • A-WOO8-5 복잡 표집 + 결론
  • A-BUI7-* (부트스트랩)

다른 카테고리 연결

Subscribe

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