임상연구 표본수(Sample Size) 산출 시스템
종합 설계·설명 문서
전문의(비통계 전문가)가 직접 사용할 수 있으면서, 모든 질환·모든 연구설계에 적용 가능한 전문가급 표본수 산출 엔진
표본수 산출 시스템 설계 분석서
방법론 조사 + 로직·아키텍처 설계서
0. 핵심 설계 통찰 (Executive Summary)
표본수 산출 공식 자체는 질환에 의존하지 않는다. 질환(위암, 폐암, 당뇨 등)은 공식에 직접 들어가지 않으며, 오직 다음 4개 축의 조합으로 계산이 결정된다.
질환은 위 식의 파라미터 값(기저 사건률, 중앙생존기간, 표준편차 등)으로만 개입한다. 따라서 시스템을 "전 질환 적용 가능"하게 만드는 올바른 전략은 질환별 계산기를 따로 만드는 것이 아니라, 질환 비의존(disease-agnostic) 계산 엔진 — 보편적 통계 공식 라이브러리 — 하나로 모든 질환을 처리하는 것이다. 질환 지식은 코드가 아니라 사용자가 입력하는 파라미터 값으로만 들어온다. 이 분리(decoupling)가 본 설계의 가장 중요한 원칙이다.
◆질환 비의존 설계의 의의
시스템은 어떤 질환 지식도 코드나 내장 데이터로 보유하지 않는다. 위암을 포함한 모든 질환은 동일한 일반 엔진으로 처리되며, 임상 파라미터는 전적으로 사용자가 근거와 함께 입력한다. 이 설계로 (1) 특정 질환에 치우치지 않는 보편성과 (2) 출처가 불명확한 기본값의 오용 차단을 동시에 달성한다.
1. 표본수 산출의 통계학적 기초
모든 표본수 계산은 다음 5개 입력에 의존한다 (Wang & Ji, CHEST 2020).
| 요소 | 기호 | 설명 | 관례값 |
|---|---|---|---|
| 유의수준 (제1종 오류) | \(\alpha\) | 참인 귀무가설을 기각할 확률 (위양성) | 0.05 (양측) |
| 검정력 | \(1-\beta\) | 거짓 귀무가설을 기각할 확률 | 0.80 / 0.90 |
| 효과크기 / 최소검출차이(MDD) | \(\Delta,\delta\) | 임상적으로 의미 있는 최소 차이 | 연구자 지정 |
| 변동성 | \(\sigma\) (SD) | 결과변수의 산포 (연속형에만 필요) | 선행/예비연구 |
| 배정비 | \(k=n_2/n_1\) | 군 간 표본 배분 비율 | 1:1 |
핵심 표준정규분위수: 양측 \(\alpha=0.05 \to z=1.96\), 검정력 80% \(\to z=0.84\), 90% \(\to z=1.28\).
1.1 가설 프레임워크 (4종)
| 프레임워크 | 임상 질문 | 귀무/대립가설 (평균 예시) | α |
|---|---|---|---|
| 동등성검정(Equality) | "차이가 있는가?" | \(H_0:\mu_T=\mu_C\) vs \(H_1:\mu_T\neq\mu_C\) | 양측 |
| 우월성(Superiority) | "더 우수한가?" (마진 d 초과) | \(H_0:\mu_T-\mu_C\le d\) vs \(H_1:>d\) | 단측/양측 |
| 비열등성(Non-inferiority) | "마진 이상으로 나쁘지 않은가?" | \(H_0:\mu_T-\mu_C\le-\delta\) vs \(H_1:>-\delta\) | 단측 |
| 동등성(Equivalence) | "허용범위 안에서 같은가?" | \(H_0:|\mu_T-\mu_C|\ge\delta\) vs \(H_1:<\delta\) | TOST |
동등성 시험은 두 개의 비열등성 시험의 교집합(TOST, Two One-Sided Tests)이다. 동등성·비열등성은 α를 양분하지 않고 단측 α를 그대로 적용한다 (NCSS, FDA NI guidance).
2. 분류 체계 — 시스템의 골격
모든 방법은 다음 4차원 좌표로 유일하게 식별된다. 이 분류 체계가 곧 메서드 레지스트리의 키(key)가 된다.
연구설계 (Design)
- 평행군 RCT / 교차설계
- 군집무작위 / 요인설계
- 단일군(과거대조)
- 적응적/군축차 설계
- 코호트·환자대조·단면
- 정밀도 기반·진단정확도
결과변수 (Outcome)
- 연속형(평균)
- 이분형(비율)
- 생존/사건시간(HR)
- 계수형(Rate)
- 순서형 / 상관
- 일치도(κ, ICC)
가설 프레임워크
- Equality
- Superiority (by margin)
- Non-inferiority
- Equivalence
- Estimation(CI)
풀고자 하는 값
- 표본수 \(N\)
- 검정력 \(1-\beta\)
- 검출가능 효과크기
- (정밀도)
예"위암 보조요법 신규약이 표준요법 대비 무재발생존 우월" = (Parallel, Time-to-event, Superiority, Solve-N).
3. 방법 카탈로그 (공식 + 근거 + 우선순위)
표기: \(\Phi^{-1}\) = 표준정규 역누적분포, \(z_{1-\alpha/2}\) = 양측 임계값, 배정비 \(k=n_2/n_1\).
3.1 [P1·필수] 두 평균 비교 — 평행군, 연속형
동등성검정(차이 검정):
\[ n_1=\frac{(z_{1-\alpha/2}+z_{1-\beta})^2\,\sigma^2\,(1+1/k)}{\Delta^2},\quad n_2=k\,n_1 \]- 비열등성/우월성(마진): 분모의 \(\Delta\)를 \((\text{실제차이}-(-\delta))\) 또는 \((\text{실제차이}-d)\)로 치환, 단측 α 사용.
- 분산 미상 시 t-분포 보정(비중심 t) 옵션 제공.
3.2 [P1·필수] 두 비율 비교 — 평행군, 이분형
\[ n_1=\frac{\left(z_{1-\alpha/2}\sqrt{(1+1/k)\bar p(1-\bar p)}+z_{1-\beta}\sqrt{p_1(1-p_1)+p_2(1-p_2)/k}\right)^2}{(p_1-p_2)^2} \]- 연속성 보정(Fleiss), 정확검정(Fisher), 효과 척도(차이/RR/OR) 선택 제공.
- 비열등성/동등성: 마진을 비율차/위험비/오즈비 스케일로 지정.
3.3 [P1·필수] 생존분석 — 평행군, 사건시간 (위암 핵심)
사건수 우선 산출 후 표본수로 환산하는 2단계 구조.
Schoenfeld (사건수)
\[ E=\frac{(z_{1-\alpha/2}+z_{1-\beta})^2}{(\ln HR)^2\cdot p(1-p)}\quad\left(1{:}1\text{이면 } E=\frac{4(z_{1-\alpha/2}+z_{1-\beta})^2}{(\ln HR)^2}\right) \]Freedman (사건수, 대안)
\[ E=(z_{1-\alpha/2}+z_{1-\beta})^2\left(\frac{HR+1}{HR-1}\right)^2 \]표본수 환산 (등록기간 \(a\), 추가추적 \(f\), 지수분포 가정)
\[ P_{event}=1-\frac{e^{-\lambda f}-e^{-\lambda(f+a)}}{\lambda a},\qquad N=\frac{E}{\bar P_{event}} \]- 비례위험(PH) 기본, 미충족(지연효과·치료전환) 시 가중 로그순위/Max-Combo 옵션(P3).
- 비열등성/동등성 HR 마진 지원.
- 효과 입력 2-모드: ① HR 직접 입력 또는 ② Reference 생존율 입력(특정 시점 생존율 \(S_c(t),S_e(t)\)). ②는 지수분포 가정으로 \(\lambda=-\ln S(t)/t \to HR=\lambda_e/\lambda_c\) 및 대조군 중앙생존기간을 내부 환산 (상세는 PART II).
3.4 [P2] 단일군(One-sample) — 평균/비율
- 단일 비율 vs 기준치: \( n=\dfrac{(z_{1-\alpha/2}\sqrt{p_0(1-p_0)}+z_{1-\beta}\sqrt{p_a(1-p_a)})^2}{(p_a-p_0)^2}\)
- 종양학 단일군 2단계(Simon's two-stage, 반응률) — 조기중단 경계 포함.
3.5 [P2] 대응표본/교차설계 — 연속형/이분형
- 대응 t (상관 ρ 반영): \(n=\dfrac{(z_{1-\alpha/2}+z_{1-\beta})^2\sigma_d^2}{\Delta^2}\), \(\sigma_d^2=2\sigma^2(1-\rho)\)
- 2×2 교차(생물학적동등성 포함), 고차 교차설계.
3.6 [P2] 정밀도 기반(추정/CI) — 가설검정 없음
- 단일 평균: \(n=(z_{1-\alpha/2}\,\sigma/E)^2\) (E=허용오차)
- 단일 비율: \(n=z_{1-\alpha/2}^2\,p(1-p)/E^2\) + 유한모집단 보정 \(n_{adj}=\dfrac{n}{1+(n-1)/N_{pop}}\)
- 유병률·발생률 조사, 단면조사에 사용.
3.7 [P2] 상관 — Fisher z 변환
\[ n=\left(\frac{z_{1-\alpha/2}+z_{1-\beta}}{C}\right)^2+3,\quad C=\tfrac12\ln\frac{1+r}{1-r} \]3.8 [P3] 진단정확도 — 민감도/특이도, ROC/AUC
- 민감도: \(n_{disease}=\dfrac{z_{1-\alpha/2}^2\,Se(1-Se)}{W^2}\), 전체 \(N=n_{disease}/\text{유병률}\) (특이도는 1−유병률로).
- AUC 비교(Hanley–McNeil/Obuchowski).
3.9 [P3] 군집무작위설계 — 설계효과
\[ DEFF=1+(m-1)\rho_{ICC},\qquad N_{cluster\text{-}adj}=N_{individual}\times DEFF \](\(m\)=군집당 평균 인원, \(\rho\)=급내상관 ICC)
3.10 [P3] 회귀·ANOVA·계수형·순서형·일치도·메타분석
로지스틱/Cox/선형회귀 계수 검정, 일원/다원 ANOVA, 음이항·포아송 발생률비, 비례오즈, Cohen's κ, ICC 신뢰구간 폭, 메타분석 검정력.
▲개발 우선순위 요약 — P1(3.1~3.3)이 임상시험·종양학 표본수의 약 80%를 커버한다. 위암학회 특성상 생존분석(3.3)을 1차 릴리스 필수로 둔다.
효과크기(HR)와 필요 사건수의 관계
HR이 1에 가까울수록(효과가 작을수록) 필요한 사건수가 급격히 증가한다. 1:1 배정, 양측 α=0.05 기준 (Schoenfeld).
4. 보정 레이어 (Adjustment Layer)
원시 계산값 \(N\)에 순차 적용하는 독립 모듈. 어떤 방법에든 합성 가능해야 한다.
| 보정 | 공식 / 방법 | 적용 |
|---|---|---|
| 탈락/추적실패 | \(N_{adj}=N/(1-d)\), d=탈락률 | 거의 모든 전향연구 |
| 다중비교 | Bonferroni \(\alpha'=\alpha/m\), Holm, FDR | 다중 1차/2차 변수 |
| 군집 설계효과 | \(DEFF=1+(m-1)\rho\) | 군집/반복측정 |
| 중간분석(군축차) | O'Brien–Fleming, Pocock 알파소비함수 | 적응적 설계 |
| 유한모집단 보정 | \(n/(1+(n-1)/N_{pop})\) | 폐쇄 모집단 조사 |
| 불균형 배정 | 배정비 k 반영 | 1:2, 2:1 등 |
5. 시스템 아키텍처
5.1 계층 구조
※ 질환 지식은 어떤 계층에도 내장하지 않는다 — 질환 비의존 설계 (§0 · §5.3)
5.2 계산 엔진 인터페이스 (핵심 추상화)
모든 방법은 동일한 계약(contract)을 구현하는 플러그인으로 등록된다. 이로써 새 질환·새 방법을 추가해도 엔진/UI를 수정할 필요가 없다(개방-폐쇄 원칙).
@dataclass
class MethodKey:
design: str # 'parallel' | 'crossover' | 'cohort' | ...
outcome: str # 'mean' | 'proportion' | 'survival' | ...
framework: str # 'equality' | 'superiority' | 'noninferiority' | 'equivalence'
class SampleSizeMethod(Protocol):
key: MethodKey
parameters: list[ParamSpec] # 이름/타입/범위/단위/도움말
references: list[Citation] # 근거 문헌(보고서 자동 인용)
def solve_n(self, p: Params) -> Result: ... # 정방향
def solve_power(self, p: Params) -> Result: ... # 역방향
def solve_effect(self, p: Params) -> Result: ... # 역방향
# 닫힌형이 없으면 단조성 기반 이분탐색(root-finding)으로 역산
Result는 {표본수(군별/총), 사건수(생존), 실제검정력, 적용공식, 가정, 경고, 인용}을 포함한다.
5.3 질환 파라미터의 처리 방식 (질환 비의존 설계)
시스템은 특정 질환에 대한 어떠한 사전 지식(프리셋, 기본 파라미터)도 코드나 데이터로 내장하지 않는다. 모든 임상 파라미터는 사용자가 근거와 함께 직접 입력하며, 엔진은 이 값을 보편 통계 공식에 대입할 뿐이다.
- 설계 의도
- 범용성: 위암뿐 아니라 모든 질환·모든 임상 상황에 동일한 엔진으로 적용.
- 오용 방지: 출처 불명확·부적합한 기본값의 무비판적 사용을 원천 차단.
- 엔진의 순수성: 계산 로직과 질환 지식을 엄격히 분리 → 재사용성·검증 가능성 극대화.
- 사용자 지원: 각 파라미터의 도움말·전형값 범위·효과크기↔정밀도 환산 보조를 UI에서 제공. 생존분석은 "HR 직접 입력 / Reference 생존율 입력" 2-모드 지원(§3.3).
- 향후 확장 시 원칙: 질환별 권장 시나리오가 필요하더라도 엔진과 분리된 선택적·출처표기 필수 외부 데이터로만 제공하고 사용자 검토를 강제(코드 결합 금지).
5.4 데이터 모델 (계산 1건 = 재현 가능한 레코드)
Calculation
├ method_key (design/outcome/framework)
├ inputs (모든 파라미터 + 단위)
├ adjustments (탈락/다중성/설계효과/중간분석)
├ results (n1, n2, total, events, achieved_power)
├ assumptions, warnings, citations
└ audit (작성자, 시각, 엔진버전, 난수시드) ← 재현성·규제 대응
6. 사용자 워크플로우 (전문의 대상 UX)
전문의는 통계학자가 아니므로 "임상 질문 → 자동 방법 매핑" 마법사가 핵심이다.
전문가 모드는 모든 파라미터를 직접 조작하고 방법을 직접 선택할 수 있게 한다.
7. 검증·신뢰성 전략 (의료용 필수)
전문의가 규제·IRB 제출에 사용하므로 정확성 검증이 기능보다 우선한다.
- 참조 도구 대조검증: 모든 방법을 PASS/nQuery/G*Power/R(
pwr,gsDesign,Hmisc,powerSurvEpi) 결과와 회귀테스트로 자동 대조 (허용오차 ±1 표본). - 교과서 예제 고정 테스트: Chow(2017), Schoenfeld(1981), Freedman(1982), Fleiss 표준 예제값을 단위테스트로 고정.
- 입력 검증: 확률 0~1, σ>0, 0<power<1, HR>0, 마진 부호 일관성 등 사전 차단.
- 엔진 버전·시드 기록: 동일 입력 → 동일 출력 보장(감사추적).
- 불확실성 가시화: 점추정 1개가 아니라 민감도 표/곡선을 기본 노출.
8. 보고서·규제 대응
CONSORT/ICH E9, 식약처·IRB 표본수 기재 요건에 맞춰 다음을 자동 생성: 설계·가설·α·검정력·효과크기·변동성 출처·배정비·탈락률·다중성 처리·사용 공식·인용문헌·도출 표본수. → 복붙 가능한 프로토콜 문단 + PDF.
9. 기술 스택
| 계층 | 제안 | 근거 |
|---|---|---|
| 계산 엔진 | Python (SciPy/NumPy) 또는 R(검증된 패키지) | 통계 생태계·검증 용이 |
| 검증 레퍼런스 | R gsDesign,powerSurvEpi,pwr 병행 | 무료·논문 인용 가능 |
| API | FastAPI(파이썬) / plumber(R) | 엔진을 서비스화 |
| UI | 웹 마법사 + 전문가 폼 | 의료진 접근성 |
| 배포 | 컨테이너(Docker), 원내 폐쇄망 옵션 | 의료정보 보안 |
◆실제 기술 구성
- 계산 엔진: Python (SciPy/NumPy), 플러그인형 메서드 레지스트리(4축 키)
- API/서버: FastAPI + uvicorn
- UI: 단일 페이지 웹(HTML/JS) — 마법사 + 전문가 + 보고서 모드
- 보고서: 서버측 PDF(reportlab) + 민감도 곡선(matplotlib), 한글 폰트 포함
- 대조검증: R
pwr/gsDesign/powerSurvEpi스크립트 - 배포: 컨테이너(Docker) 기반, 자동 HTTPS 적용 웹 서비스
10. 구현 범위 및 향후 확장
현재 제공 범위 (메서드 17종)
| 분류 | 제공 내용 |
|---|---|
| 연속형(평균) | 두 평균(독립/대응)·교차설계, 정밀도/신뢰구간 기반 |
| 이분형(비율) | 두 비율 × (동등·우월·비열등·동등성), 단일 비율 |
| 생존(Time-to-event) | Schoenfeld/Freedman, 효과 입력 2-모드, 누적·추적·탈락 반영 |
| 단일군 종양학 | Simon 2단계(최적/미니맥스) |
| 상관·진단정확도 | 상관계수, 민감도/특이도·AUC |
| 다군·회귀 | ANOVA, 선형/로지스틱 회귀 |
| 군집설계 | 설계효과(DEFF, ICC) 보정 |
| 중간분석 | O'Brien–Fleming / Pocock 경계, 검정력 보정 |
| 공통 보정 | 탈락률, 배정비, 다중비교(Bonferroni) |
| 부가 기능 | 민감도 분석(표·곡선), PDF 보고서, R 대조검증 |
→향후 확장 후보: 계수형(rate)·순서형 결과, 비례위험 미충족 생존분석, 일치도(kappa) 정밀화, 메타분석 표본수 등. 확장 시에도 질환 비의존 원칙과 참조도구 대조검증 회귀스위트를 유지한다.
11. 리스크 및 권고
- 오용 위험(가장 큼): 잘못된 방법/파라미터 선택 → 마법사 가이드·도움말·경고·민감도분석으로 완화. 책임 통계 자문 권고 문구 명시.
- 파라미터 출처 부실: 입력값의 출처(선행문헌·예비자료) 명시를 유도하고 보고서에 가정으로 기록.
- 공식 정확성: 자체 구현보다 검증된 라이브러리 재사용 + 대조검증 우선.
- 비례위험 등 가정 위반: 가정 명시 및 대안 방법(P3) 제공.
12. 운영·배포 구성
시스템은 별도 설치 없이 웹 브라우저로 접속하는 컨테이너 기반 서비스로 제공된다.
| 항목 | 내용 |
|---|---|
| 접속 방식 | 웹 브라우저(설치 불필요), 자동 HTTPS(Let's Encrypt) 적용 |
| 컨테이너 | python:3.12-slim 기반 Dockerfile, /api/health 헬스체크 |
| 재현성 | 컨테이너 이미지로 동일 환경 재현, 계산 1건마다 감사 레코드 보존(§5.4) |
| 보안 옵션 | 의료정보 보안 정책에 맞춰 원내/사내 폐쇄망 배포 옵션 지원 |
| 품질 보증 | 단위테스트 + R 대조검증 회귀스위트 상시 유지 |
13. 참고문헌 (조사 근거)
- Wang X, Ji X. Sample Size Estimation in Clinical Research. CHEST 2020;158(1S):S12–S20.
- Chow SC, Shao J, Wang H, Lokhnygina Y. Sample Size Calculations in Clinical Research. 3rd ed., 2017.
- Schoenfeld D. Biometrika 1981;68:316–319. (로그순위 점근이론)
- Freedman LS. Statistics in Medicine 1982;1:121–129. (로그순위 표본수 표)
- NCSS/PASS Documentation — Two Proportions / Survival / Non-inferiority·Equivalence procedures.
- FDA. Non-Inferiority Clinical Trials to Establish Effectiveness — Guidance for Industry.
- Tang Y. Unified approach to power/sample size for log-rank tests. Stat Methods Med Res 2021.
- Simon R. Optimal two-stage designs for phase II clinical trials. (단일군 종양학)
생존분석 표본수 산정 — 효과 입력 방식 설명서
효과크기를 위험비(HR)로 제시하는 방법과 Reference 생존율로 제시하는 방법
1. 한눈에 보기
생존분석 표본수 산정 화면에는 "효과 입력 방식" 선택 항목이 있으며, 연구자가 가진 사전정보에 맞춰 두 가지 중 하나를 선택할 수 있습니다.
① 위험비(HR) 직접 입력
입력: 목표 HR(예: 0.75), 대조군 중앙생존기간
② Reference 생존율 입력
입력: 평가 시점 \(t\), 대조군 \(S_c(t)\), 시험군 \(S_e(t)\)
◆핵심 — 두 방식은 별개의 계산기가 아니라 동일한 하나의 엔진으로 수렴합니다. ②를 선택하면 시스템이 생존율을 내부적으로 HR로 환산한 뒤, ①과 완전히 같은 로그순위 표본수 공식으로 계산합니다.
2. 두 방식이 필요한 이유
표본수 산정의 통계적 본질은 HR 척도에서 이뤄집니다. 그러나 실제 연구 설계 현장에서 연구자가 가진 정보의 형태는 상황에 따라 다릅니다.
- HR을 바로 아는 경우: 동일 질환·유사 중재의 선행 RCT·메타분석에서 HR 추정치가 보고되어 있으면 그대로 사용하는 것이 가장 직접적입니다.
- 생존율만 아는 경우(탐색적 연구에서 흔함): 선행문헌에 "5년 생존율 50%" 같은 시점 생존율만 있고 HR은 없는 경우가 많습니다. 연구자가 손으로 HR을 환산하는 것은 번거롭고 오류 위험이 있습니다.
→ 시스템은 두 형태의 정보를 모두 받아들이고, 내부적으로 동일한 계산 경로로 통합합니다.
3. 방식 ① 위험비(HR) 직접 입력
연구자가 목표 위험비를 직접 입력합니다.
- 입력: 목표 HR(예: 0.75 — 1보다 작을수록 효과 큼), 대조군 중앙생존기간, 유의수준 α, 검정력, 배정비, 등록·추적 기간
- 계산: 입력된 HR을 그대로 로그순위 검정 공식에 대입
4. 방식 ② Reference 생존율 입력
HR 대신 특정 시점의 생존율을 입력하면, 시스템이 지수분포 가정 하에 자동으로 HR과 대조군 중앙생존기간을 환산합니다.
4.1 입력 항목
- 생존율 평가 시점 \(t\) (예: 3년 → 36개월, 5년 → 60개월)
- 대조군 생존율 \(S_c(t)\) (예: 5년 OS 0.50)
- 시험군 기대 생존율 \(S_e(t)\) (예: 0.62 — 효과가 있으려면 \(S_e > S_c\))
4.2 환산 공식
지수분포 가정에서 생존함수는 \(S(t)=e^{-\lambda t}\) 이며, 두 군의 위험률 비가 HR이라는 비례위험 관계로부터 다음이 성립합니다.
\[ S_e(t) = S_c(t)^{HR} \;\Longrightarrow\; HR = \frac{\ln S_e(t)}{\ln S_c(t)} \] \[ \lambda_c = \frac{-\ln S_c(t)}{t}, \qquad \text{대조군 중앙생존기간} = \frac{\ln 2}{\lambda_c} = \frac{-t\,\ln 2}{\ln S_c(t)} \]4.3 예시
| 입력 | 값 |
|---|---|
| 평가 시점 \(t\) | 60개월 (5년) |
| 대조군 생존율 \(S_c\) | 0.50 |
| 시험군 기대 생존율 \(S_e\) | 0.62 |
→ 환산 결과: \(HR = \ln 0.62 / \ln 0.50 \approx 0.69\), 대조군 중앙생존기간 \(= 60.0\)개월
대조군 5년 생존율이 0.50이므로, 정의상 중앙생존기간은 정확히 60개월이 됩니다.
두 군의 생존곡선 (지수분포 가정)
대조군 median 60개월(\(S_c(60)=0.50\)), 환산 HR≈0.69 → 시험군 \(S_e(60)\approx0.62\). 두 곡선의 벌어짐이 곧 효과크기다.
이 환산 내역은 결과 보고서에 다음과 같이 그대로 명시됩니다.
"Reference 생존율 입력: 대조군 S_c(60개월)=0.50, 시험군 S_e=0.62 ⇒ HR=0.69, 대조군 median≈60.0개월 (지수분포 가정)"
5. 두 방식의 공통 계산 경로
입력 방식과 무관하게, 이후 표본수 산정 과정은 동일합니다.
(지수분포 가정)"| H H --> E["필요 사건수
events 산출"]:::calc E --> N["표본수 환산
N = E / P_event"]:::calc N --> R["보정(탈락·배정비)
+ 결과·보고서"]:::out classDef m1 fill:#dbeafe,stroke:#2563eb,color:#1e3a8a; classDef m2 fill:#ccfbf1,stroke:#0d9488,color:#134e4a; classDef hub fill:#0f2a4a,stroke:#0f2a4a,color:#fff; classDef calc fill:#fff,stroke:#94a3b8,color:#1e293b; classDef out fill:#fef3c7,stroke:#d97706,color:#7c2d12;
- 필요 사건수 산출 — Schoenfeld 또는 Freedman 공식 \[ E = \frac{(z_{\alpha} + z_{\beta})^2}{\pi(1-\pi)\,(\ln HR)^2} \]
- 표본수 환산 — 지수분포·균일등록 가정 하 사건발생확률 \(P_{event}\)로 나눔 \[ N = \frac{E}{P_{event}} \]
- 보정 — 탈락률, 배정비 반영
- 결과 + 가정·공식·인용 포함 보고서 자동 생성
지원 가설 프레임워크: 차이검정(양측)·우월성·비열등성·동등성 (모두 HR 척도).
6. 신뢰성·투명성
- 환산 투명성: 생존율→HR 환산에 사용한 가정과 도출된 HR·중앙생존기간을 보고서에 명시하여, 검토자가 환산 과정을 그대로 추적할 수 있습니다.
- 결과 일치성 검증: 동일한 생존율로 ② 방식으로 계산한 결과와, 그로부터 환산된 HR을 ① 방식으로 직접 입력한 결과가 일치함을 단위테스트로 검증합니다.
- 외부 대조검증: R(
powerSurvEpi,gsDesign,pwr) 및 교과서 예제로 공식 정확성을 교차 확인합니다.
7. 가정 및 유의사항
- 비례위험(PH) 가정: 본 산정은 두 군의 위험비가 추적 기간 내내 일정하다고 가정합니다. 지연효과·치료전환이 예상되면 가중 로그순위/Max-Combo 등 대안을 함께 검토하시기 바랍니다.
- 지수분포 가정: Reference 생존율→HR 환산과 사건발생확률 계산은 지수분포(상수 위험률)를 전제합니다. 시점 생존율이 한 점만 주어진 탐색적 설계에 적합한 근사이며, 보고서에 가정으로 기록됩니다.
- 두 방식 모두 입력 파라미터의 출처(선행문헌·예비자료)를 명시하고 연구자가 검토하도록 권고합니다.
8. 요약 (한 문장 답변)
"생존분석에서 HR을 직접 입력하는 방법과 시점별 reference 생존율을 입력하는 방법을 모두 지원합니다. 생존율로 입력하면 지수분포 가정 하에 시스템이 HR과 중앙생존기간으로 자동 환산하여, HR 직접 입력과 동일한 로그순위 표본수 공식으로 계산하고, 환산에 사용한 가정과 HR 값을 보고서에 그대로 표기합니다."