1 들어가며 — § 10.2.3 의 자연 확장
§ 10.2.3 (Discrete-time PH, 10-3) 에서 단일 사건 (single risk) 의 이산 시간 비례 위험 모형 — c-log-log link cumulative ordinal 또는 pooled dichotomous logistic — 을 다뤘다. § 11.3 는 그 자연 확장 — 사건이 여러 종류 (competing risks) 일 때.
| 항목 | § 10.2.3 (10-3) Single Risk | § 11.3 (본 sub-post) Competing Risks |
|---|---|---|
| 응답 | 시점 + censoring (binary event) | 시점 + event 종류 (multinomial) |
| 사건 종류 | 1 종 | \(C - 1\) 종 (competing) |
| 모형 | c-log-log ordinal 또는 binary logistic | Multinomial logistic |
| Link | c-log-log (PH) 또는 logit | Multinomial logit |
| 응용 | 사망 추적, 재발 추적 | Transplant vs death, 직업 이직 종류 |
“§ 11.3 = Efron (1988) 의 partial logistic regression — discrete-time PH 모형을 표준 logistic 으로 적합 — 을 IOM (1999) 가 multinomial 로 확장 + OPO 클러스터 random effects 로 미국 liver transplant 정책 분석. 핵심 발견: (1) 지역적 격차 — 가장 심각한 환자 (status 1) 의 transplant rate ICC = 0.045 (지역 동등) vs 덜 심각 환자 (status 3) ICC = 0.35 (큰 격차). (2) Sharing 효과 — 지역 sharing 으로 status 1 transplant 42% → 52%, mortality 9% → 7%. (3) Waiting time 의 부적절성 — 덜 심각한 환자에서 waiting time 이 의료 필요성과 역상관. Mixed-effects multinomial 이 정책 의사결정에 직접 기여한 사례. § 10.2.3 single risk PH 의 framework 를 그대로 multinomial 로 확장 — 새로운 알고리즘 없이 새로운 응용.”
2 § 11.3 — Competing Risk 의 framework
2.1 Efron (1988) — Partial Logistic Regression
Efron (1988), Ingram & Kleinman (1989) 의 발상:
- 각 환자의 시점별 record 를 만든다.
- Outcome: 그 시점에 사건 발생 (1) 또는 안 함 (0).
- 이 sequential records 에 표준 logistic regression 적합.
- 결과: discrete-time PH 모형의 회귀 계수 추정.
예시 — 4 개월 후 사망 환자:
| Month | Outcome |
|---|---|
| 1 | 0 (생존) |
| 2 | 0 (생존) |
| 3 | 0 (생존) |
| 4 | 1 (사망) |
→ 4 개 record. 마지막 record 만 event = 1.
Censoring 환자 (2 개월 후 follow-up loss):
| Month | Outcome |
|---|---|
| 1 | 0 |
| 2 | 0 |
→ 2 개 record, 모두 0 (마지막은 censoring).
Survival 환자 (12 개월 모두 follow-up):
| Month | Outcome |
|---|---|
| 1-12 | 0, 0, …, 0 |
→ 12 개 record, 모두 0.
왜 표준 logistic 으로 PH 모형 적합 가능한가:
- Discrete-time hazard \(h_c = P(\text{event at } c \mid \text{survived to } c-1)\).
- 각 시점에 환자가 위험에 노출됨 (at risk).
- Risk set 변화하지만, 각 시점-환자 record 는 독립 Bernoulli trial 로 볼 수 있음 (conditional on at risk).
→ Standard logistic regression 의 직접 적용 가능. 시점별 dummy 또는 time variable 로 hazard 의 시간 변화 모형화.
§ 10.2.3 (10-3) 의 pooled dichotomous approach 와 동일:
- 식 (10.13): \(\log[-\log(1 - p_{ijc})] = x'\beta + z'T\theta\) — c-log-log link.
- Efron: \(\log[p_{ijc} / (1 - p_{ijc})] = x'\beta\) — logit link.
두 link 모두 가능 — c-log-log 가 연속 시간 PH 와 정확 일치, logit 은 표준 회귀의 단순함.
Efron-Ingram 정확도: Time interval 이 작아질수록 (\(\to 0\)) 두 접근이 정확히 일치 (continuous time PH). 실무적으로 monthly 측정 정도면 차이 미미.
2.2 IOM (1999) 의 Multinomial 일반화
Efron 의 partial logistic 에 IOM (1999) 의 두 일반화:
Multinomial 로 응답 확장: Single event (transplant) 만 보지 않고 competing risks (transplant + mortality) 동시 분석. 한 환자의 시점별 record outcome 이 3 범주 — transplant / death / other.
Random effects 추가: OPO (Organ Procurement Organization) 클러스터 효과를 random effects 로 처리. 같은 OPO 안의 환자들이 비슷한 transplant rate 공유.
→ Mixed-effects multinomial logistic regression = Hedeker Ch.11 framework 의 직접 응용.
장기 이식 대기 환자의 outcomes:
- Transplant: 이식 받음 (성공).
- Mortality: 이식 전 사망 (실패).
- Other: 계속 대기, 다른 status 로 이동, 명단에서 빠짐, 다른 센터에서 이식 등.
이 세 outcome 이 상호 배제 — 한 사건이 일어나면 다른 사건 차단. 이것이 competing risks 의 정의.
Single risk 모형 (예: transplant 만) 의 한계:
- Mortality 를 censoring 으로 처리 — informative censoring 가능성.
- “사망 안 했으면 언젠가 이식 받았을” 같은 가정이 비현실적.
- → biased 추정.
Competing risks 모형의 가치:
- 두 outcome 을 동시 모형화 — informative censoring 회피.
- 각 outcome 의 결정 요인 별도 분석.
- 정책 평가에 직접 활용 (transplant 효과 vs mortality 효과).
3 § 11.3.1 — Waiting for Organ Transplantation
3.1 정책 배경
배경 통계 (1998, IOM 1999):
- 21,000+ 미국인이 이식 받음 (kidney, liver, heart, lung 등).
- 62,000 명이 대기 중, 16 분마다 새 이름 추가.
- 매년 4,000 명이 대기 중 사망 (11 명/일).
핵심 issue:
- 지역별 (OPO 별) 대기 시간 격차 — 환자가 살고 있는 지역에 따라 이식 시간 차이 큼.
- 인종·소득 격차 — 흑인·저소득 환자 접근성 우려.
1998 DHHS Final Rule (42 CFR Part 121):
- “Allocation of scarce organs based on common medical criteria, not accidents of geography”.
- 지역 격차 감소 + 의료 기준 강조 + 연방 감독 강화.
논쟁:
- Transplant community 의 우려: 비용 증가, 작은 transplant center 폐쇄, 소수자 접근성 악화, 기증 감소, 사망자 증가.
- Congress 가 1 년 implementation 중지 + IOM 에 study 의뢰 (1998 Oct).
→ IOM 1999 report 가 본 분석의 토대. ~68,000 liver transplant 대기 명단 record (1995-1999) 분석.
IOM 이 liver transplant 에 집중한 이유:
- 대기 시간 격차가 가장 큼 — DHHS Final Rule 의 주요 동기.
- 정책 controversial — OPTN 가 최근 여러 변경.
- Cold ischemic time 김 — liver 가 body 외부에서 viable 한 시간이 heart, lung 보다 김 → allocation 변경 가능.
- 의료 긴급도 큼 — kidney 같은 dialysis alternative 없음.
Status levels (의료 중증도):
- Status 1: 가장 심각 — life expectancy ~1 주.
- Status 2A: 심각 chronic.
- Status 2B: 덜 심각 chronic.
- Status 3: 이식 필요하지만 즉각적 위험 없음 — life expectancy 수년 가능.
표본의 50%+ 가 Status 3.
분석 전략: Status level 별 stratified 분석 (Status 2A 는 sample 너무 적어 제외, Status 1, 2B, 3 만).
3.2 모형 Specification
응답 (3 nominal categories):
- Transplant: 이식 받음.
- Mortality: 대기 중 사망.
- Other (reference): 계속 대기, status 변경, 명단 제외, 다른 센터 이식 등.
시간 단위:
- Status 1: days.
- Status 2B, 3: months.
(Status 1 의 사건이 빠르게 일어나므로 더 fine 한 시간 단위.)
Covariates:
- Age (3 그룹: 0-5, 6-17, 18+).
- Sex (1 = male).
- Race (1 = black, 0 = else).
- Blood type (1 = O 또는 B, 0 = A 또는 AB).
- OPO volume (small / medium / large by 1995-1999 transplant 수).
Random effects:
- \(\sigma_1 \theta_i\): OPO \(i\) 의 transplantation rate 의 random effect.
- \(\sigma_2 \theta_i\): OPO \(i\) 의 mortality rate 의 random effect.
→ 각 contrast 마다 별도 random effect SD (\(\sigma_c\)). § 11.1.1 의 ICC 분리 framework 직접 적용.
Blood type 의 O 또는 B vs A 또는 AB 분류는 donation 가능성 의 의학적 사실에 기반:
- O 또는 B 환자: subset of donors 에서만 이식 가능 (제한적).
- A 또는 AB 환자: 거의 모든 donor 에서 이식 가능 (포괄적).
이 분류로 두 그룹의 transplant 가능성 차이를 정량화.
예상: O/B 환자가 transplant rate 더 낮을 것 (음의 회귀 계수). 이것이 실제 결과 (Table 11.4) 와 일치.
이런 의학적 사실 기반 covariate 코딩이 통계 분석의 정확성과 임상적 해석을 동시에 강화.
3.3 Table 11.4 — Mixed-Effects Competing Risk 결과
Transplant vs Other (첫 contrast):
| 모수 | Status 1 | Status 2B | Status 3 |
|---|---|---|---|
| Intercept | -1.829 (0.276) | -2.077 (0.129) | -3.593 (0.210) |
| Day/month | 0.016 (0.015) | -0.092 (0.016)*** | -0.220 (0.030)*** |
| Age 0-5 vs 18+ | -0.907 (0.188)*** | 0.470 (0.103)*** | 1.156 (0.154)*** |
| Age 6-17 vs 18+ | -0.362 (0.234) | 0.135 (0.243) | 0.844 (0.268)** |
| Gender (male) | -0.098 (0.198) | 0.126 (0.087) | 0.054 (0.186) |
| Race (black) | -0.275 (0.268) | 0.134 (0.222) | 0.158 (0.304) |
| Blood (B or O) | -0.076 (0.196) | -0.577 (0.062)*** | -0.477 (0.098)*** |
| OPO M vs L | -0.054 (0.319) | 0.590 (0.157)*** | 1.179 (0.149)*** |
| OPO S vs L | 0.261 (0.336) | 0.560 (0.187)** | 0.757 (0.228)*** |
| Random OPO SD | 0.393 (0.144)** | 0.689 (0.064)* | 1.335 (0.162)* |
Mortality vs Other (둘째 contrast):
| 모수 | Status 1 | Status 2B | Status 3 |
|---|---|---|---|
| Intercept | -3.685 (0.482) | -3.313 (0.227) | -3.654 (0.172) |
| Day/month | 0.023 (0.047) | -0.213 (0.039)*** | -0.216 (0.041)*** |
| Age 0-5 | -0.968 (0.378)** | -0.195 (0.381) | -2.119 (2.099) |
| Age 6-17 | -1.001 (0.551) | -0.516 (0.641) | -1.193 (2.000) |
| Gender (male) | 0.077 (0.371) | 0.014 (0.191) | -0.063 (0.268) |
| Race (black) | 0.162 (0.448) | -0.082 (0.359) | 0.027 (0.544) |
| Blood (B or O) | 0.003 (0.433) | -0.005 (0.164) | -0.017 (0.231) |
| OPO M vs L | 0.203 (0.491) | 0.202 (0.126) | -0.526 (0.300) |
| OPO S vs L | -0.230 (0.930) | 0.355 (0.151)** | -0.658 (0.358) |
| Random OPO SD | 0.042 (0.298) | 0.116 (0.049)** | 0.137 (0.157) |
- p < .05, ** p < .01, *** p < .001.
Transplant rate 의 OPO random effects:
- Status 1: SD = 0.393 (작지만 유의).
- Status 2B: SD = 0.689 (큼).
- Status 3: SD = 1.335 (매우 큼).
Mortality rate 의 OPO random effects:
- Status 1: SD = 0.042 (비유의).
- Status 2B: SD = 0.116 (유의).
- Status 3: SD = 0.137 (비유의).
→ Mortality 는 OPO 와 거의 무관. 모든 status 에서 OPO 차이 1% 미만의 분산.
→ Transplant 는 OPO 영향 큼, 특히 덜 심각 환자에서.
이 비대칭이 nominal 모형의 핵심 발견 — single risk 모형으로는 절대 못 얻음. Competing risks framework 가 두 outcome 을 동시 분석 → 어느 outcome 에 OPO 영향 큰지 분리.
3.4 지역적 격차 — ICC 분석
Transplantation ICC:
- Status 1: \(r = 0.393^2 / (0.393^2 + \pi^2/3) = 0.045\).
- Status 2B: \(r = 0.689^2 / (0.689^2 + \pi^2/3) = 0.13\).
- Status 3: \(r = 1.335^2 / (1.335^2 + \pi^2/3) = 0.35\).
Status 1 (가장 심각, ICC = 0.045):
- 지역 격차 거의 없음 — 가장 위급한 환자는 OPO 무관하게 빠르게 이식.
- 평균 대기 시간 4.8 일 — 짧고 일관.
- → “지역적 동등” 의 통계적 증거.
Status 3 (덜 심각, ICC = 0.35):
- 지역 격차 매우 큼 — OPO 따라 transplant rate 매우 다름.
- 평균 대기 시간 285.1 일.
- → “지역적 불평등” 의 통계적 증거.
정책 함의 (DHHS Final Rule 의 통계적 토대):
- “지역 격차 reduce” 라는 Final Rule 의 주된 동기는 status 3 환자에 한정 — 그 환자들의 격차가 큰 것이 사실.
- Status 1 환자는 이미 지역 동등 — Final Rule 의 효과 미미할 것.
- Status 1 환자에게 “공정성” 의 통계적 증거 — Final Rule 의 implementation 에 큰 우려 없음.
이 발견이 IOM report 의 가장 핵심 contribution. 정책 결정에 직접 사용된 통계 분석.
3.5 OPO Volume 효과
Table 11.4 의 OPO volume 효과 (Transplant vs Other):
- Status 1: OPO size 효과 없음 (가장 심각 환자는 OPO 무관).
- Status 2B: M vs L = 0.590*, S vs L = 0.560 — 작은 OPO 가 더 자주 이식.
- Status 3: M vs L = 1.179, S vs L = 0.757 — 동일 패턴, 더 강함.
수치 예시 (첫 한 달):
- Large OPO (9+ million): Status 2B 5%, Status 3 3% transplant.
- Small OPO (≤4 million): Status 2B 17%, Status 3 9% transplant.
→ 작은 OPO 가 덜 심각 환자에게 더 빠른 이식.
기증자/대기자 비율 차이:
- 작은 OPO: 기증자 수가 적지만 대기 환자 수도 적음.
- 큰 OPO: 기증자 많지만 대기 환자가 훨씬 많음 (도시 인구 집중).
→ 상대적 가용성 — 작은 OPO 의 대기 환자가 우선순위 더 높음.
역설 — 큰 OPO 가 자원 많지만 환자 더 오래 기다림:
- 자원 절대량 ↑.
- 환자 수가 더 빠르게 ↑.
- 결국 환자별 자원 ↓.
IOM 권고:
- 가장 심각 환자 (status 1) 에게 최대 transplantation chance 를 위해 organ allocation region 에 최소 9 million people 포함.
- 더 큰 region → 더 많은 기증자 풀 → 가장 위급 환자 우선.
이것이 sharing arrangement (지역 sharing) 의 정책적 토대.
3.7 Waiting Time 의 부적절성
전통적 organ allocation 기준은 first-come, first-served (긴 waiting time 환자 우선). IOM 분석:
Status 1:
- 12 일 동안 hazard 일정 — transplantation rate ~15%/day, mortality rate ~3%/day.
- Waiting time 무관.
Status 2B:
- 12 month 기간:
- Transplantation rate: 12% → 5%/month (감소).
- Mortality rate: 3% → 0.3%/month (감소).
- → 시간이 지날수록 hazard 감소.
Status 3:
- 12 month 기간:
- Transplantation rate: 4% → 0.05%/month (큰 감소).
- Mortality rate: 2% → 0.2%/month (감소).
Cumulative outcomes (Figure 11.7):
- Status 1, 12 일: 80% transplant, 10% die.
- Status 2B, 12 month: 60% transplant, 7% die.
- Status 3, 12 month: 20% transplant, 8% die.
Status 2B, 3 의 hazard 감소 의 의미:
- 오래 기다린 환자는 (1) 자연 호전 또는 (2) 다른 status 로 이동.
- 즉 현재 시점의 환자는 의료 필요성이 낮음 — 절박하지 않은 사람들.
- Waiting time 으로 우선순위 매기면 → 절박하지 않은 환자에게 우선 이식.
- → 의료 필요성과 역상관.
임상적 함의:
- Waiting time 은 status 1 (가장 심각) 외에는 좋은 우선순위 기준 아님.
- Status 2B, 3 에는 현재 의료 상태 (status 변화 추적) 가 더 적절한 기준.
- Allocation system 의 fundamental redesign 정당화.
IOM 권고:
- Status 기반 allocation (의료 중증도 우선).
- Waiting time 은 같은 status 안에서만 사용 (동률 처리).
이것이 미국 organ allocation 정책 변경의 통계적 토대 — mixed-effects competing risk 모형 분석에서 직접 도출된 정책 권고.
3.8 Random Effects 분포 Robustness
§ 11.2 의 분포 robustness check 와 평행:
| 분포 | \(\sigma_1\) (Random OPO SD) |
|---|---|
| Gaussian | 0.393 |
| Uniform (보정 후) | \(0.131 \times \sqrt{9.718^2 / 12} = 0.368\) |
거의 동일. Fixed effects 도 두 모형에서 거의 같음.
Uniform 분포 (\(a, b\) 사이) 의 분산 = \((b - a)^2 / 12\).
Hedeker MIXNO 의 uniform 옵션은 Gauss-Hermite quadrature 의 extreme nodes (\(a = 4.859, b = -4.859\) for \(Q = 10\)) 사용 → 분산 \(9.718^2 / 12 \approx 7.87\).
따라서 보정된 SD:
\[ \sigma_{\text{adjusted}} = \sigma_{\text{uniform raw}} \times \sqrt{\text{uniform variance}} = 0.131 \times \sqrt{7.87} \approx 0.368 \]
→ Gaussian SD 0.393 와 거의 같음.
결론: 분포 가정이 결과에 영향 미미 — 분포 robustness 입증.
일반 권고:
- 정규 가정 사용 (가장 친숙).
- Robustness 검증 필요 시 uniform 또는 비모수 분포 적합.
- 결과 큰 차이 → outlier 또는 multi-modal 의심.
4 § 10.2.3 (Single Risk PH) vs § 11.3 (Competing Risks) 종합 비교
| 항목 | § 10.2.3 (10-3) Single Risk | § 11.3 Competing Risks |
|---|---|---|
| 응답 | 사건 시점 + censoring | 사건 시점 + 사건 종류 |
| Outcomes | 1 종 (예: 사망) | \(C-1\) 종 (예: transplant + mortality) |
| 모형 | c-log-log ordinal 또는 logistic | Multinomial logistic |
| Random effects | 단일 \(\sigma_v\) | \(C-1\) 개 \(\sigma_c\) |
| Censoring 처리 | 직접 (1 종 모형) | Reference category 활용 (“other” 가 censoring 포함) |
| 응용 | 사망, 재발, 단일 결과 | Competing 위험 (transplant vs death, 직업 이직 종류) |
Single risk 충분한 경우:
- 사건 종류가 1 가지 (사망, 재발 등).
- 다른 위험 (예: 사망에 비해 무시 가능) 또는 mutually exclusive 가 명확.
- 단순 분석 + 표준 PH 모형으로 충분.
Competing risks 필요한 경우:
- 여러 사건 종류가 동시에 위험.
- 한 사건 발생이 다른 사건 차단 (informative censoring 위험).
- 각 사건의 결정 요인이 다를 수 있음 (별도 분석 필요).
- 정책 분석 — 어느 outcome 에 어떤 효과가 있는지 분리 필요.
IOM 의 case 가 후자:
- Transplant 와 mortality 모두 위험.
- 한쪽이 일어나면 다른쪽 차단.
- Transplant 결정 요인 (OPO size 등) 과 mortality 결정 요인 다를 수 있음.
- 정책 결정 — 두 outcome 모두 평가 필요.
→ Single risk 로는 답할 수 없는 정책 질문에 competing risks 가 답.
5 응용 분야
| 분야 | Competing risks 형태 |
|---|---|
| 장기 이식 | Transplant / Mortality / Other (본 시연) |
| 암 임상시험 | Cancer death / Other death / Survival |
| 직업 분석 | 자발 이직 / 해고 / 같은 직장 유지 |
| 가족 형성 | 결혼 / 동거 / 미혼 유지 |
| 학교 | 졸업 / 자퇴 / 진학 |
| 의료 이용 | Outpatient visit / Emergency visit / No use |
| 제품 채택 | Brand A / Brand B / Brand C / 비채택 |
| 약물 사용 변화 | 중단 / 감량 / 증가 / 유지 |
→ “여러 outcome 이 동시에 위험인 모든 종단 데이터”.
6 코드 예시
6.1 Step 1: Pooled Person-Time Records 생성
import numpy as np
import pandas as pd
def to_person_time_records_competing(df_subject: pd.DataFrame) -> pd.DataFrame:
"""환자 단위 데이터를 person-time records 로 변환 (competing risks).
df_subject: subject 한 행 — 'subject', 'time' (사건 시점), 'event' (0=other/censor, 1=transplant, 2=mortality)
"""
rows = []
for _, row in df_subject.iterrows():
for t in range(1, int(row['time']) + 1):
if t < row['time']:
# 그 시점에 사건 안 일어남
event = 0 # other / at risk
else:
# 마지막 시점 — 사건 또는 censoring
event = int(row['event']) # 0/1/2
rows.append({
'subject': row['subject'],
'OPO': row['OPO'],
'time': t,
'event': event,
**{k: row[k] for k in row.index if k not in ['subject', 'time', 'event', 'OPO']}
})
return pd.DataFrame(rows)
# 시뮬레이션 — 4 환자
df_sub = pd.DataFrame({
'subject': [1, 2, 3, 4],
'OPO': ['A', 'A', 'B', 'B'],
'time': [3, 5, 2, 4],
'event': [1, 0, 2, 1], # transplant, censored, mortality, transplant
'age': [45, 55, 30, 60]
})
df_pt = to_person_time_records_competing(df_sub)
print(df_pt)- Subject 1 (transplant at t=3): 3 records — events (0, 0, 1).
- Subject 2 (censored at t=5): 5 records — 모두 0.
- Subject 3 (mortality at t=2): 2 records — events (0, 2).
- Subject 4 (transplant at t=4): 4 records — events (0, 0, 0, 1).
이 변환이 Efron (1988) 의 partial logistic regression 의 데이터 준비. 표준 multinomial logistic 으로 적합 가능.
6.2 Step 2: Mixed-Effects Multinomial Competing Risk 적합 (R mclogit)
library(mclogit)
# Person-time records (위 시뮬레이션 확장)
# event: 0 = other (reference), 1 = transplant, 2 = mortality
df_pt$event <- factor(df_pt$event, levels = c(0, 1, 2),
labels = c("other", "transplant", "mortality"))
# Mixed-effects multinomial — OPO random intercept
fit_competing <- mblogit(event ~ time + age + factor(OPO_volume),
random = ~1 | OPO,
data = df_pt, baseline = "other")
summary(fit_competing)
# 두 contrast (transplant vs other, mortality vs other) 별 결과
# - Random OPO SD: 두 contrast 별 별도mblogit 의 출력에서:
- “transplant vs other”: 첫 contrast 의 회귀 계수 + random OPO SD.
- “mortality vs other”: 둘째 contrast 의 회귀 계수 + random OPO SD.
논문 Table 11.4 와 비교:
- Transplant: random OPO SD 가 큼 (특히 status 3 에서 1.335).
- Mortality: random OPO SD 가 작음 (~ 0.1).
→ OPO 효과가 transplant 결정에는 크지만 mortality 에는 작음 — 정책 분석의 핵심 발견.
6.3 Step 3: ICC 와 정책 함의 계산
# 두 contrast 별 random OPO SD 추출
sigma_transplant <- attr(VarCorr(fit_competing), "sd")[1]
sigma_mortality <- attr(VarCorr(fit_competing), "sd")[2]
# ICC 계산
icc_transplant <- sigma_transplant^2 / (sigma_transplant^2 + pi^2 / 3)
icc_mortality <- sigma_mortality^2 / (sigma_mortality^2 + pi^2 / 3)
cat("OPO 의 contrast 별 ICC:\n")
cat(" Transplant: ICC =", round(icc_transplant, 3), "\n")
cat(" Mortality: ICC =", round(icc_mortality, 3), "\n")
# 정책 분석 — 어느 contrast 가 OPO 효과 큼?
if (icc_transplant > 0.10) {
cat("\n[정책 함의] Transplant rate 의 OPO 격차가 큼 → 지역 sharing 검토.\n")
}
if (icc_mortality < 0.05) {
cat("[정책 함의] Mortality 의 OPO 격차 작음 → 의료 표준 일관됨.\n")
}ICC 임계값 기반 자동 권고:
- Transplant ICC > 0.10: 지역 격차 → sharing 권고.
- Mortality ICC < 0.05: 의료 표준 일관 → 격려.
이런 분석을 status level 별로 반복 → 각 status 의 정책 권고 도출.
논문의 IOM 분석이 정확히 이 절차 — status level 별 stratified + ICC 비교 + sharing 효과 평가.
6.4 Step 4: Random Effects 분포 비교 (Bayesian, brms)
library(brms)
# Normal random intercept
fit_normal <- brm(event ~ time + age + factor(OPO_volume) + (1 | OPO),
data = df_pt, family = categorical("logit"),
chains = 2, cores = 2, iter = 2000, refresh = 0)
# Uniform random intercept (truncated normal as approximation)
prior_uniform <- prior(uniform(0, 3), class = "sd")
fit_uniform <- brm(event ~ time + age + factor(OPO_volume) + (1 | OPO),
data = df_pt, family = categorical("logit"),
prior = prior_uniform,
chains = 2, cores = 2, iter = 2000, refresh = 0)
# 결과 비교
summary(fit_normal)
summary(fit_uniform)
# Fixed effects 가 비슷하면 분포 robust논문의 Table 11.5 (Status 1 분석) 와 평행한 검증:
- Fixed effects 가 두 분포에서 거의 같으면 → 정규 가정 사용 안전.
- Random effects SD 는 척도 차이 (이미 본 바와 같이 보정 필요).
보정 공식:
- Uniform: \(\sigma_{\text{adjusted}} = \sigma_{\text{raw}} \times \sqrt{(b-a)^2 / 12}\).
- Gauss-Hermite extreme nodes 사용 시 specific 값 (예: \(Q = 10\) 이면 \(a = 4.859, b = -4.859\)).
대안 — Bayesian 의 정규 vs 두꺼운 꼬리:
student_t(3, 0, 1)prior — 두꺼운 꼬리, outlier robust.cauchy(0, 1)— 매우 두꺼운 꼬리.
일반 권고: 정규 가정 사용 + sensitivity analysis 로 robustness 검증.
7 관련 주제
선행 지식
- Ch.11 Overview — Nominal GLMM 의 큰 그림
- § 11.1 ~ 11.1.2 — Multinomial 모형 + ICC + 추정
- § 11.2 MHRP — Nominal 의 다른 응용 (housing)
- § 10.2.3 Discrete-time PH — Single risk PH 모형 (본 sub-post 의 토대)
후속 주제 (Ch.11 sub-posts)
- § 11.4 — Ch.11 Summary
관련 개념
- Efron (1988) — Partial logistic regression / person-time logistic regression
- Ingram & Kleinman (1989) — Person-time logistic 의 개발
- IOM (1999) — Liver transplant 분석 보고서
- Gibbons et al. (2000, 2003) — Mixed-effects competing risk 의 발전
- DHHS Final Rule (1998, 42 CFR Part 121) — 미국 organ allocation 정책
- UNOS (United Network for Organ Sharing) — 통계
- USGAO (1997) — 기증자/대기자 통계
- § 10.2.3 Allison 1982 — Discrete-time survival 표준 introduction
- Statistics survival series — 연속 시간 생존 분석 (Cox PH)
- Cox (1972) — Continuous-time PH 모형 원전