Klein Ch.5 Overview — Estimation of Basic Quantities for Other Sampling Schemes

§ 5.2 Left·Double·Interval Censoring (time-reversal trick + Turnbull 1974/1976 self-consistency NPMLE) · § 5.3 Right-Truncated Data (R_i = τ - X_i 로 좌절단 framework 환원, Lagakos 1988 AIDS induction time) · § 5.4 Cohort Life Table (grouped data 의 KM 일반화 — Y_j = Y’_j - W_j/2 균등 분포 가정 + 식 5.4.1~5.4.7 + 식 5.4.8 median linear interpolation + Thompson 1977 의 lim → KM)

Klein & Moeschberger Ch.5 의 4 개 절을 한 편으로 조망한다. Ch.4 가 우측 censoring + 좌절단 (가장 흔한 두 sampling scheme) 의 비모수 추정을 다뤘다면, Ch.5 는 그 외의 모든 sampling scheme — left/double/interval censoring · right truncation · grouped data — 의 추정을 다룬다. § 5.1 Introduction — Ch.4 framework 의 한계 (오른쪽 censoring + 왼쪽 truncation 만 처리) 와 Ch.5 의 필요성. Sampling scheme 별로 다른 likelihood 와 다른 추정 도구. § 5.2 Left·Double·Interval Censoring — (1) Pure left censoring: time reversal trick (T = τ - 원래 시간) → right-censored framework 적용 → Ch.4 의 KM 그대로 사용 (Ware-DeMets 1976). 추정 대상 P(τ - X > t) = P(X < τ - t). (2) Double censoring (left + right): closed-form 없음, Turnbull 1974 self-consistency 반복 알고리즘. § 4.2 의 self-consistency (EM 원형) 의 일반화 — left-censored 관측의 conditional expectation 으로 d_i 를 채워 KM 반복 갱신. (3) Interval censoring (L_i, R_i]: Turnbull 1976 NPMLE — jump points 결정 + α_ij indicator + self-consistency 반복. Klein Example 5.1 (191 명 마리화나 첫 사용) + Example 5.2 (94 명 breast cancer cosmetic deterioration). § 5.3 Right-Truncated Data — entry 이후 사건 발생자만 표본 포함 (infectious diseases 의 retrospective). Time reversal 의 두 번째 응용: R_i = τ - X_i → 좌절단 framework 환원 → § 4.6 의 Y_i = #{j: L_j < t_i ≤ T_j} 그대로 적용. 추정 대상이 conditional P(X < τ - t | X ≤ τ). Klein Example 5.3 (Lagakos 1988 AIDS induction time, 37 children + 258 adults transfusion-related). Keiding-Gill 1990 의 counting process 점근. § 5.4 Cohort Life Table — 사건 시점이 정확히 관측되지 않고 미리 정해진 구간 (a_{j-1}, a_j] 내에서만 알려진 grouped data. 11 column 표 — interval, Y’_j (entering), W_j (withdrawn), Y_j = Y’j - W_j/2 (at risk, 균등 분포 가정), d_j (events), Ŝ(a_j) = ∏(1 - d_i/Y_i) (식 5.4.1 = KM 의 grouped 형태), f̂(a_mj) = [Ŝ(a_{j-1}) - Ŝ(a_j)]/(a_j - a{j-1}) (식 5.4.2), ĥ(a_mj) = 2f̂/[Ŝ(a_{j-1}) + Ŝ(a_j)] 또는 d_j/[(a_j - a_{j-1})(Y_j - d_j/2)] (식 5.4.3·4), Greenwood SE (식 5.4.5 = KM 의 식 4.2.2 와 동일), median linear interpolation (식 5.4.8), median residual lifetime (식 5.4.9·10). NLSY weaning 927 명 (Klein § 1.14 Table 5.6) — median weaning 11.21 weeks. Sacher 1956 의 hazard 대안 ĥ = -ln p̂j/(a_j - a{j-1}). Thompson 1977 의 결과: 구간 길이 → 0 일 때 life table = KM (limit theorem). § 5.5 Exercises (10 문제 — 다음 deep-dive 편에서 풀이). Ch.5 의 핵심: time-reversal trick 으로 left cens / right trunc 를 Ch.4 framework 로 환원, Turnbull self-consistency 로 interval/double 처리, life table 으로 grouped 데이터 처리. Ch.6~13 의 출발점.

Statistics
Survival Analysis
Klein-Moeschberger
Interval-Censoring
Right-Truncation
Life-Table
Turnbull-NPMLE
저자

Kwangmin Kim

공개

2026년 04월 28일

1 들어가며 — Ch.4 의 두 sampling scheme 에서 모든 sampling scheme 으로

Klein 시리즈 사다리:

주제
Ch.1 시리즈 19 데이터 catalog (5 censoring/truncation 형태)
Ch.2 시리즈 4 함수 + 9 분포 + PH/AFT + competing risks
Ch.3 시리즈 Censoring·truncation + likelihood + counting process
Ch.4 시리즈 KM·NA·CI·Band·Mean/Median·LT·CIF (우측 censored + 좌절단)
Ch.5 (본 편) Left·Double·Interval Censoring + Right Truncation + Cohort Life Table
Ch.6 (예정) Kernel hazard smoothing + excess mortality + Bayesian NPMLE
… (Ch.7~13) log-rank · Cox · Aalen · AFT · 진단
Ch.5 의 한 줄 요약

“Ch.4 의 KM·NA framework 는 우측 censoring + 좌절단 두 가지 sampling scheme 만 직접 처리한다. 다른 모든 scheme — left censoring · double censoring · interval censoring · right truncation · grouped data — 는 (1) time-reversal trick 으로 Ch.4 framework 에 환원 (left cens → right cens, right trunc → left trunc), (2) Turnbull 의 self-consistency 반복으로 NPMLE 직접 계산 (double·interval), 또는 (3) cohort life table 의 grouped KM 으로 처리한다. Ch.5 의 모든 도구가 Ch.4 의 변형 또는 일반화.”

직관 — 왜 Ch.4 의 두 scheme 만으로 부족한가

Ch.4 가 처리하는 두 scheme:

  • 우측 censoring: 사건이 일어났는지 안 일어났는지만 알고, 일어났다면 그 시점도 정확히 안다 (가장 흔한 임상시험 데이터).
  • 좌절단: entry 시점 이전의 사건 발생자는 표본에 없음 (length-biased sampling).

다른 sampling scheme (Ch.1.17~1.19 의 정전 사례):

  • Left censoring (마리화나 첫 사용 시점): 사건이 일어난 건 알지만 정확한 시점을 모름 — “이미 사용한 적 있음” 같은 응답.
  • Interval censoring (breast cancer cosmetic deterioration): 사건이 두 검진 시점 사이 어딘가에 일어남.
  • Right truncation (AIDS): 표본 수집 시점까지 사건 발생한 사람만 표본 포함 (vs 좌절단의 mirror image).
  • Grouped data (life table): 사건 시점이 미리 정해진 구간 내에서만 보고됨.

→ 각 scheme 은 다른 정보 구조 를 가지므로 다른 likelihood, 다른 추정량이 필요. 그러나 Ch.4 의 수학적 도구를 (적절히 변형하여) 그대로 활용 가능.

1.1 Ch.5 의 4 절 조망

주제 핵심 도구
§ 5.1 Introduction Ch.5 의 5 sampling scheme 위치
§ 5.2 Left·Double·Interval Cens Time reversal + Turnbull 1974/1976 self-consistency
§ 5.3 Right Truncation Time reversal → 좌절단 환원
§ 5.4 Cohort Life Table Grouped data 의 KM (식 5.4.1)
§ 5.5 Exercises 10 문제

2 § 5.2 — Left, Double, and Interval Censoring

2.1 Left Censoring — Time Reversal Trick

정의: Left Censoring

개체 \(i\) 의 사건 시점 \(X_i\) 에 대해:

  • 정확히 관측: \(X_i\) 값 알려짐.
  • Left censored: \(X_i\) 가 어떤 시점 \(C_{l,i}\) 이전에 일어났음만 알려짐 (\(X_i \leq C_{l,i}\)).

예 (Klein § 1.17 마리화나): 고등학생에게 “마리화나 처음 사용 나이” 를 물음. “이미 사용한 적 있음” 응답 = “현재 나이 이전에 사용했음” → left censored.

직관 — 시간 축을 뒤집으면 left → right

핵심 아이디어: 시간을 거꾸로 흐르게 하면 left censoring 이 right censoring 으로 변환.

  • 큰 시점 \(\tau\) 를 잡고 새로운 시간 \(T_i^* = \tau - T_i\) 정의.
  • 원래 left-censored (\(X_i \leq C_{l,i}\)) → 새 시간에서 right-censored (\(\tau - X_i \geq \tau - C_{l,i}\)).

변환된 데이터에 § 4.2 의 KM 그대로 적용. 결과 KM 은 \(P(\tau - X > t) = P(X < \tau - t)\) 의 추정.

원래 시간으로 역변환: \(\widehat{F}(t) = \widehat{P}(X < t) = 1 - \widehat{S}^*(\tau - t)\) where \(\widehat{S}^*\) 은 변환 데이터의 KM.

조건: \(\tau\) 가 모든 관측 시점 이후. censoring 과 사건 시점의 독립 가정 유지.

→ Ch.4 도구를 그대로 사용. 새 추정 framework 불필요. Ware-DeMets (1976) 의 적용 사례.

2.2 Double Censoring — Turnbull (1974) Self-Consistency

정의: Double Censoring

표본에 left + right censoring 이 모두 있고, 일부 정확한 사건 시점도 있음.

표기:

  • \(t_1 < t_2 < \cdots < t_m\): 사전 정의된 grid.
  • \(d_i\): 시점 \(t_i\) 에서의 정확한 사건 수.
  • \(r_i\): \(t_i\) 에서의 right censoring 수.
  • \(c_i\): \(t_i\) 에서의 left censoring 수 (“\(t_i\) 이전 어딘가” 에서 사건 발생).
함정 — Closed form 추정량 없음

Double censoring 은 단순 time reversal 로 처리 안 됨 (양 방향 censoring 이 동시 존재). Turnbull (1974) 의 반복 알고리즘 (self-consistency) 이 표준.

직관 — Self-consistency 의 일반화

§ 4.2 Theoretical Note 3 의 self-consistency (Efron 1967) 가 right censoring 의 KM 을 fixed point 로 도출했다. Turnbull 은 이를 left + right 양방향 으로 확장:

알고리즘:

  • Step 0: 초기값 \(S_0(t_j)\) — Turnbull 권장은 left-censored 무시한 KM.
  • Step (K+1)-1: 현재 \(S_K\) 로 conditional 확률 계산:

\[ \widehat{p}_{ij} = \widehat{P}(t_{j-1} < X \leq t_j \mid X \leq t_i) = \frac{S_K(t_{j-1}) - S_K(t_j)}{1 - S_K(t_i)}, \quad j \leq i \]

  • Step (K+1)-2: 각 left censored 관측 \(c_i\) 를 가능한 시점들에 분배:

\[ \widehat{d}_i = d_i + \sum_{l \geq i} c_l \cdot \widehat{p}_{li} \]

(시점 \(t_l\) 에서 left censored 된 \(c_l\) 명 중, 실제로 \(t_i\) 에서 사건 발생했을 기댓값을 더함).

  • Step (K+1)-3: 새 KM 계산 (right censored 데이터 처리):

\[ S_{K+1}(t_j) = \prod_{i \leq j}\left(1 - \frac{\widehat{d}_i}{Y_i}\right) \]

  • 수렴할 때까지 반복.

EM 알고리즘과의 관계: \(\widehat{p}_{ij}\) 가 E-step, \(\widehat{d}_i\) 업데이트가 M-step. Self-consistency 는 EM 의 비모수 적용. → § 4.2 의 right censoring 만의 self-consistency 가 단방향, Turnbull 이 양방향.

2.3 Interval Censoring — Turnbull (1976) NPMLE

정의: Interval Censoring

각 개체 \(i\) 의 사건 시점이 구간 \((L_i, R_i]\) 내에 있음만 알려짐.

  • Exact = degenerate interval (\(L_i = R_i^-\)).
  • Left = \((0, R_i]\).
  • Right = \((L_i, \infty)\).

→ Interval censoring 은 censoring 의 super-class.

직관 — Turnbull 1976 NPMLE 알고리즘 골격

Closed form 없음. NPMLE (nonparametric MLE) 를 반복 계산:

  1. Jump points 결정: 모든 \(L_i, R_i\) 모은 후 정렬. 가능한 jump 시점들 \(q_1 < q_2 < \cdots < q_m\).

  2. Indicator \(\alpha_{ij}\): 개체 \(i\) 의 가능한 사건 시점이 \(q_j\) 를 포함하는가.

    \[ \alpha_{ij} = I(q_j \in (L_i, R_i]) \]

  3. Self-consistency 반복: \(\widehat{p}_j\) = \(q_j\) 에서의 확률 mass. 초기값에서 시작:

    \[ \widehat{p}_j^{(K+1)} = \frac{1}{n} \sum_i \frac{\widehat{p}_j^{(K)} \alpha_{ij}}{\sum_l \widehat{p}_l^{(K)} \alpha_{il}} \]

    (개체 \(i\) 의 mass 를 그 가능 시점들에 비례 분배).

  4. 수렴 후 \(\widehat{S}(t) = 1 - \sum_{q_j \leq t} \widehat{p}_j\).

→ Turnbull 1976 의 알고리즘은 EM 의 직접 비모수 적용. interval censoring 의 표준 도구. R icenReg + interval 패키지 구현.

2.4 Klein Examples 5.1·5.2

Example 5.1 — 마리화나 첫 사용 (191 명, Klein § 1.17)

California 고등학생 191 명의 마리화나 첫 사용 나이.

  • 정확히 관측: 일정 나이에 사용 시작 응답.
  • Left censored: “이미 사용한 적 있음” 응답 (현재 나이 이전 어딘가).
  • Right censored: “사용한 적 없음” + 인터뷰 시점.

Turnbull 1974 알고리즘 적용 → 17 회 반복 후 수렴 (Klein Table 5.2).

결과 (interval-summarized):

  • 12-24 월령: 0.761.
  • 25-33 월령: 0.668.
  • 40-48 월령: 0.467.

→ 청소년의 marijuana 첫 사용 빈도가 14~16 세에 급증.

Example 5.2 — Breast Cancer Cosmetic Deterioration (94 명, Klein § 1.18)

Beadle (1984) 94 명 breast cancer 의 4-6 개월 검진 사이에서의 cosmetic 악화 시점:

  • Radiation only 46 명 vs Radiation + chemotherapy 48 명.
  • 검진 사이의 interval censoring (정확한 시점 모름).

Turnbull 1976 NPMLE → 두 군의 추정 곡선 비교 (Klein Figure 5.1).

→ Radiation only 군의 cosmetic 악화 시점이 더 늦음 (chemotherapy 추가 시 부작용 가속).

2.5 Turnbull 분산 — J 행렬의 inverse

Practical Note 2 — Turnbull (1974) 의 분산 추정량

double censoring 의 covariance matrix \(\mathbf{V} = (V_{ij})\), \(V_{ij} = \text{Cov}[\widehat{S}(t_i), \widehat{S}(t_j)]\).

Tridiagonal symmetric matrix \(\mathbf{J}\) 의 inverse 가 \(\mathbf{V}\):

\[ A_{ii} = \frac{d_i}{[\widehat{S}(t_{i-1}) - \widehat{S}(t_i)]^2} + \frac{d_{i+1}}{[\widehat{S}(t_i) - \widehat{S}(t_{i+1})]^2} + \frac{r_i}{\widehat{S}(t_i)^2} + \frac{c_i}{[1 - \widehat{S}(t_i)]^2} \]

\[ A_{i,i+1} = -\frac{d_{i+1}}{[\widehat{S}(t_i) - \widehat{S}(t_{i+1})]^2} \]

\(|i-j| \geq 2\)\(A_{ij} = 0\).

직관 — J 행렬의 형태

\(A_{ii}\) 의 4 항: 각 종류의 데이터가 \(\widehat{S}(t_i)\) 의 정밀도에 기여.

  • \(d_i, d_{i+1}\): 사건 시점 양 옆.
  • \(r_i\): right censoring.
  • \(c_i\): left censoring.

→ 모든 정보 source 가 합산된 Fisher information 의 비모수 일반화.

Tridiagonal 구조: 인접 시점의 정보만 직접 공유 (멀리 떨어진 시점은 covariance 0).

3 § 5.3 — Right-Truncated Data

3.1 Right Truncation 의 본질

정의: Right Truncation

표본에 사건이 시점 \(\tau\) 이전에 발생한 개체만 포함.

  • \(T_i\) = chronological 사건 발생 시점.
  • \(X_i\) = “infection 부터 disease 까지” 의 시간 (induction time, latency).
  • 표본 조건: \(T_i \leq \tau\) — 즉 시점 \(\tau\) 까지 disease 발현한 사람만.

전형적 응용: 감염병 retrospective study (AIDS, hepatitis 등). 발병 시점에서 거꾸로 추적.

직관 — 좌절단 의 mirror image
측면 Left truncation (§ 4.6) Right truncation (§ 5.3)
표본 조건 \(X_i \geq L_i\) (entry 이후 사건) \(X_i \leq \tau\) (시점 \(\tau\) 까지 사건)
누락 Entry 이전 사건자 (Channing 의 60 세 이전 사망) 시점 \(\tau\) 이후 사건자 (AIDS 잠복기 긴 환자)
추정 가능 \(S(t) / S(L_{\min})\) — conditional \(P(X < \tau - t \mid X \leq \tau)\) — conditional

→ 두 truncation 은 시간축의 좌우 대칭. Right trunc 는 left trunc 의 mirror image.

3.2 Time-Reversal: Right Truncation → Left Truncation

직관 — 두 번째 time-reversal trick

§ 5.2 의 left censoring 처럼, time reversal 로 right truncation 을 left truncation 으로 변환:

  • \(R_i = \tau - X_i\).
  • 원래 right truncated (\(X_i \leq \tau\)) → 새 시간 \(R_i \geq 0\).
  • 원래 entry 시점 \(T_i\) → 새 시간에서의 entry \(L_i^* = \tau - T_i\).
  • 표본 조건 \(X_i \leq \tau - T_i\) (사건이 추적 종료 전) → \(R_i \geq T_i\)\(L_i^* \leq R_i\).

새 시간 데이터는 left-truncated + right-censored = 0 (모든 사건 관측됨).

§ 4.6 의 Y_i 재정의 그대로 적용:

\[ Y_i = \#\{j : L_j^* < R_i \leq R_j\} = \#\{j : T_j > X_i, X_j \leq \tau - X_i\} \]

(원래 시간에서: induction time 이 \(X_i\) 이상이고 infection 시점이 \(\tau - X_i\) 이하인 사람 수).

KM 적용 → \(P(R > t \mid R \geq 0)\) 추정 → 역변환으로 \(P(X < \tau - t \mid X \leq \tau)\).

3.3 Klein Example 5.3 — AIDS Induction Time

Lagakos 1988 — 37 children + 258 adults transfusion-related AIDS

배경: HIV-contaminated blood transfusion 으로 인한 AIDS. Infection time \(T_i\) 와 induction time (HIV → AIDS 발현) \(X_i\) 의 추정.

  • Sampling: 1986-06-30 까지 AIDS 발현한 환자만 (right truncation 의 정전).
  • \(\tau = 8\) years (1978-04 부터 1986-06 까지).

Klein Table 5.5 의 손풀이:

  • \(X_i = 1.0\) (induction 1 년) 시점:
    • \(R_i = 8 - 1 = 7\).
    • \(Y_i\) = “induction time > 1 인 사람과 infection time > 7 인 사람을 제외” = \(37 - 19 - 1 = 17\).
    • \(\widehat{P}(X < 1 \mid X \leq 8) = 0.1579\) (즉 1 년 이내 induction 확률 16%).
  • \(X_i = 5.5\) (induction 5.5 년):
    • \(\widehat{P}(X < 5.5 \mid X \leq 8) = 0.6667\) (즉 5.5 년 이내 67%).

임상 함의: HIV 감염 후 AIDS 발현까지 평균 약 5 년 (children). Adults 는 약 8 년.

이 결과가 1980 년대 중반 AIDS 잠복기 추정의 historical 근거 — 우측 절단 무시 시 잠복기 과소 추정 (early infectees 만 보임).

→ 우측 절단 보정의 임상적 중요성.

3.4 Practical Note + Theoretical Note

우측 절단 의 추가 도구
  • 분산: Greenwood 공식 (식 4.2.2) 그대로 — 변환된 좌절단 데이터에 적용.
  • 두 군 비교: Lagakos et al. (1988) 의 검정.
  • 회귀: Gross-Huber-Carol (1992) 의 우측 절단 회귀 모형.
  • 점근: Keiding-Gill (1990) 의 counting process 점근 (cumulative backward hazard).

→ § 4.6 의 좌절단 도구가 그대로 일반화. Time reversal trick 의 우아함.

4 § 5.4 — Cohort Life Table

4.1 Grouped Data 의 본질

정의: Cohort Life Table

사건 시점이 정확히 알려지지 않고, 미리 정해진 구간 \((a_{j-1}, a_j]\) (\(j = 1, \ldots, k+1\)) 내에서만 알려진 grouped data.

구간 정의:

  • \(a_0 = 0\), \(a_{k+1} = \infty\).
  • 첫 구간: \((a_0, a_1]\).
  • 마지막 구간: \((a_k, \infty)\) — 점추정 안 됨.

응용:

  • 인구통계 (sex·연령대별 사망률).
  • 임상시험의 정기 검진 (3 개월·6 개월 등).
  • 보험 actuarial table.
  • 동물·식물 cohort study.

4.2 11 Column Life Table 구조

Klein Table 5.6 형식 — 11 열 life table
기호 의미
1 \(I_j = (a_{j-1}, a_j]\) 구간
2 \(Y'_j\) 구간 시작 시 추적 중인 사람 수
3 \(W_j\) 구간 내 censoring (loss + withdrawal)
4 \(Y_j = Y'_j - W_j/2\) 위험집합 (균등 분포 가정)
5 \(d_j\) 구간 내 사건 수
6 \(\widehat{S}(a_{j-1})\) 구간 시작 시 생존확률
7 \(\widehat{f}(a_{mj})\) 구간 중심에서의 density
8 \(\widehat{h}(a_{mj})\) 구간 중심에서의 hazard
9 \(\text{SE}[\widehat{S}(a_{j-1})]\) Greenwood SE
10 \(\text{SE}[\widehat{f}(a_{mj})]\) density SE
11 \(\text{SE}[\widehat{h}(a_{mj})]\) hazard SE

여기서 \(a_{mj} = (a_{j-1} + a_j)/2\) 는 구간 중심.

4.3 핵심 식 5 가지

핵심 식들

식 5.4.1 — KM 의 grouped 형태:

\[ \widehat{S}(a_j) = \widehat{S}(a_{j-1}) \cdot (1 - d_j/Y_j) = \prod_{i=1}^j (1 - d_i/Y_i) \]

식 5.4.2 — Density:

\[ \widehat{f}(a_{mj}) = \frac{\widehat{S}(a_{j-1}) - \widehat{S}(a_j)}{a_j - a_{j-1}} \]

식 5.4.3·4 — Hazard 두 형태:

\[ \widehat{h}(a_{mj}) = \frac{2 \widehat{f}(a_{mj})}{\widehat{S}(a_{j-1}) + \widehat{S}(a_j)} = \frac{d_j}{(a_j - a_{j-1})(Y_j - d_j/2)} \]

식 5.4.5 — Greenwood SE for \(\widehat{S}\):

\[ \text{SE}[\widehat{S}(a_{j-1})] = \widehat{S}(a_{j-1}) \sqrt{\sum_{i=1}^{j-1} \frac{d_i}{Y_i (Y_i - d_i)}} \]

→ § 4.2 의 식 4.2.2 와 완전히 동일 (KM 의 grouped 일반화).

식 5.4.8 — Median linear interpolation:

\[ \widehat{x}_{0.5} = a_{j-1} + \frac{[\widehat{S}(a_{j-1}) - 0.5](a_j - a_{j-1})}{\widehat{S}(a_{j-1}) - \widehat{S}(a_j)} \]

(정확히 0.5 가 되는 시점을 두 구간 끝점 사이의 선형 보간으로 추정).

4.4 핵심 직관 — Y_j = Y’_j - W_j/2 의 의미

직관 — 균등 분포 가정의 결과

위험집합 \(Y_j\) = 구간 내에서 “사건 발생 가능했던 사람 수” 의 평균.

  • \(Y'_j\) 명이 구간 시작에 진입.
  • \(W_j\) 명이 구간 내에서 censoring.
  • 가정: censoring 시점이 구간 내 균등 분포.

→ censoring 의 “평균 노출 기간” = 구간 길이의 절반. 따라서 효과적 위험집합:

\[ Y_j = Y'_j - W_j/2 \]

(전체 진입자에서 censoring 의 절반을 뺌).

→ 이 단순한 가정으로 KM 식을 grouped 데이터에 적용. § 4.6 의 좌절단 \(Y_i\) 재정의처럼 위험집합 정의의 변경 만으로 framework 확장.

4.5 Klein Example 5.4 — NLSY Weaning Data

NLSY 927 명 first-born breastfeeding (Klein § 1.14)
구간 (주) \(Y'_j\) \(W_j\) \(Y_j\) \(d_j\) \(\widehat{S}\) \(\widehat{f}\) \(\widehat{h}\)
0-2 927 2 926 77 1.000 0.0416 0.0434
2-3 848 3 846.5 71 0.917 0.0769 0.0875
3-5 774 6 771 119 0.840 0.0648 0.0836
5-7 649 9 644.5 75 0.710 0.0413 0.0618
7-11 565 7 561.5 109 0.628 0.0305 0.0537
11-17 449 5 446.5 148 0.506 0.0279 0.0662
17-25 296 3 294.5 107 0.338 0.0154 0.0555
25-37 186 0 186 74 0.215 0.0071 0.0414
37-53 112 0 112 85 0.130 0.0061 0.0764
53- 27 0 27 27 0.031

Hazard 형태 (Klein Figure 5.3):

  • 0~5 주: 높음 (모유 수유 중단 많음).
  • 5~37 주: 안정 (continuance plateau).
  • 37 주+: 다시 상승 (자연 weaning).

bathtub-style hazard — 처음 어려움 후 안정, 후반 자연 종료.

Median weaning time (식 5.4.8):

\(\widehat{S}(11) = 0.5058\), \(\widehat{S}(17) = 0.3381\). 0.5 가 11~17 주 사이.

\[ \widehat{x}_{0.5} = 11 + \frac{(0.5058 - 0.5)(17 - 11)}{0.5058 - 0.3381} = 11 + \frac{0.0058 \cdot 6}{0.1677} = 11.21 \text{ 주} \]

(SE 0.568 주). 즉 절반의 산모가 11.2 주에 모유 수유 종료.

Median residual at 25 weeks (식 5.4.9): 15.40 주 (SE 1.294).

4.6 Practical Notes 의 핵심 가정

3 가정의 명시 — Practical Note 1

Cohort life table 의 모든 결과는 다음에 의존:

  1. Independent censoring: censoring 시점이 사건 시점과 독립 (§ 4.2 와 동일).
  2. Uniform distribution within interval: censoring 과 사건이 구간 내 균등 분포 → \(Y_j = Y'_j - W_j/2\) 의 정당성.
  3. Constant hazard within interval: 구간 내 hazard 상수 → 식 5.4.3·4 의 도출.

가정 위반 시:

  • 가정 1 위반 (informative censoring): KM 처럼 추정량이 다른 함수 추정.
  • 가정 2 위반 (early/late skewed censoring): \(Y_j\) 가 부정확.
  • 가정 3 위반 (구간 내 hazard 변동): hazard 추정의 평활 정도 부족 — 더 작은 구간 권장.

→ 구간 선택이 결과에 큰 영향. infant mortality 처럼 hazard 가 빠르게 변하는 구간은 짧게, 노년 mortality 처럼 안정 구간은 길게.

4.7 Sacher 1956 의 Hazard 대안

Theoretical Note 1 — Sacher (1956) 의 hazard

식 5.4.3 외에 또 다른 hazard 추정:

\[ \widehat{h}(a_{mj}) = \frac{-\ln \widehat{p}_j}{a_j - a_{j-1}} \]

(생존확률 변화의 log 기반).

Gehan-Siddiqui (1973): 식 5.4.3 보다 약간 더 편향. → 식 5.4.3 표준.

4.8 Thompson 1977 — Life Table = lim KM

Theoretical Note 2 — 구간 길이 → 0 일 때 life table = KM

Thompson (1977):

“구간 길이가 모두 0 으로 수렴하면, life table 의 \(\widehat{S}(a_j)\) 가 KM 의 \(\widehat{S}(t)\) 로 수렴.”

→ Cohort life table 은 KM 의 grouped 일반화. 두 추정량은 본질적으로 같은 framework.

이 결과의 의의:

  • 구간이 충분히 작으면 life table = KM 이므로 grouped 데이터로 정확한 추정 가능.
  • 구간이 크면 평활 효과 (KM 의 잡음 감소) 가 있지만 정밀도 손실.
  • Trade-off: 구간 크기 vs 평활도.

실무 권장: hazard 가 빠르게 변하는 구간 짧게, 안정 구간 길게. 일반적 가이드라인은 frequency histogram 의 bin 선택과 유사.

5 § 5.5 — Exercises (10 문제)

Ch.5 의 10 exercises:

문제 주제
5.1 Pure left censoring + time reversal (gestation 데이터)
5.2 Double censoring + Turnbull 1974 (radiation deterioration)
5.3 Double censoring + Turnbull 1974 (alternative)
5.4 Right truncation + AIDS Lagakos 데이터
5.5 Right truncation + alternative dataset
5.6 Cohort life table + Greenwood SE (mortality)
5.7 Cohort life table + median + median residual
5.8 Cohort life table + hazard 형태 진단
5.9 Mixed (interval + right censored)
5.10 Time reversal + custom dataset

→ 각 문제는 § 5.2~5.4 의 도구를 다양한 데이터에 적용. 다음 deep-dive 편에서 풀이.

6 응용 분야

분야 Sampling Scheme 도구
청소년 행동 조사 Left censoring (이미 시작) Time reversal + KM
유방암 부작용 Interval censoring (정기 검진) Turnbull 1976 NPMLE
감염병 잠복기 (HIV) Right truncation (retrospective) Time reversal → 좌절단
인구통계 (life table) Grouped + censoring Cohort life table (식 5.4.1)
보험 actuarial Grouped data Life table
가축 cohort study Grouped + lost to follow-up Life table
동물 실험 (DMBA) Interval censoring (검사 일자) Turnbull NPMLE

7 코드 예시

7.1 Step 1 — Time Reversal 직접 구현 (Left Censoring)

import numpy as np
from lifelines import KaplanMeierFitter

def left_censored_km(times, lower_bounds, tau=None):
    """
    Left censoring: 사건이 lower_bounds 이전에 발생했음만 알 때.
    times: 정확히 관측된 사건 시점 (else NaN).
    lower_bounds: left censored 의 시점 (사건이 이 이전에 발생했음).
    tau: 시간 reversal 의 기준점 (default: max + 1).
    """
    if tau is None:
        tau = np.nanmax(np.concatenate([times, lower_bounds])) + 1

    # 모든 시간을 reversal: tau - 원래시간
    # 정확한 사건 → reversed 시간에서도 정확히 사건
    # left censored → reversed 시간에서 right censored
    new_times = np.where(np.isnan(times), tau - lower_bounds, tau - times)
    new_events = np.where(np.isnan(times), 0, 1)  # left → right cens

    kmf = KaplanMeierFitter().fit(new_times, new_events,
                                   label="reversed")
    # 역변환: 원래 시간 t 의 P(X < t) = 1 - S*(tau - t)
    return kmf, tau

7.2 Step 2 — Turnbull 1976 Interval Censoring

library(icenReg)
library(KMsurv)

# Klein Example 5.2 — breast cancer cosmetic deterioration
data(bcdeter)

# Turnbull NPMLE
fit <- ic_np(cbind(left, right) ~ treat, data = bcdeter)
plot(fit)

# 두 군 비교
fit_only_rad <- ic_np(cbind(left, right) ~ 1,
                       data = subset(bcdeter, treat == "Radiation"))
fit_rad_chemo <- ic_np(cbind(left, right) ~ 1,
                        data = subset(bcdeter, treat == "Radiation+Chemo"))

7.3 Step 3 — Cohort Life Table (식 5.4.1~5.4.5)

import numpy as np
import pandas as pd

def cohort_life_table(intervals, Y_prime, W, d):
    """
    intervals: list of (a_{j-1}, a_j) tuples
    Y_prime: 구간 시작 진입자
    W: 구간 내 censoring
    d: 구간 내 사건 수
    """
    Y = Y_prime - W / 2                              # 식 5.4.4
    q = d / Y                                         # 조건부 사건 확률
    p = 1 - q                                         # 조건부 생존
    S = np.cumprod(np.concatenate([[1], p]))[:-1]    # 식 5.4.1
    S_next = S * p

    # 구간별 정량
    table = []
    for j, (a0, a1) in enumerate(intervals):
        if a1 == np.inf:
            f = h = se_S = se_f = se_h = np.nan
        else:
            f = (S[j] - S_next[j]) / (a1 - a0)         # 식 5.4.2
            h = 2 * f / (S[j] + S_next[j])              # 식 5.4.3
            cum = sum(d[:j+1] / (Y[:j+1] * (Y[:j+1] - d[:j+1])))
            se_S = S[j] * np.sqrt(cum) if j > 0 else 0  # 식 5.4.5
            se_h = h * np.sqrt((1 - (h * (a1 - a0) / 2) ** 2) / (Y[j] * q[j]))  # 식 5.4.7

        table.append({"interval": f"{a0}-{a1}",
                      "Y": Y[j], "d": d[j],
                      "S": S[j], "f": f, "h": h,
                      "SE_S": se_S, "SE_h": se_h})

    return pd.DataFrame(table)

# Klein Example 5.4 — NLSY weaning
intervals = [(0,2), (2,3), (3,5), (5,7), (7,11), (11,17),
             (17,25), (25,37), (37,53), (53, np.inf)]
Y_prime = np.array([927, 848, 774, 649, 565, 449, 296, 186, 112, 27])
W = np.array([2, 3, 6, 9, 7, 5, 3, 0, 0, 0])
d = np.array([77, 71, 119, 75, 109, 148, 107, 74, 85, 27])

print(cohort_life_table(intervals, Y_prime, W, d))

7.4 Step 4 — R KMsurv 패키지 활용

library(KMsurv)

# Klein Example 5.4 NLSY weaning
ltab.data <- data.frame(
  start = c(0, 2, 3, 5, 7, 11, 17, 25, 37, 53),
  end = c(2, 3, 5, 7, 11, 17, 25, 37, 53, NA),
  enter = c(927, 848, 774, 649, 565, 449, 296, 186, 112, 27),
  exit = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0),  # withdrawn
  lost = c(2, 3, 6, 9, 7, 5, 3, 0, 0, 0),  # lost to follow-up
  events = c(77, 71, 119, 75, 109, 148, 107, 74, 85, 27)
)

life_table <- lifetab(tis = ltab.data$start,
                      ninit = 927,
                      nlost = ltab.data$lost,
                      nevent = ltab.data$events)
print(life_table)

8 핵심 takeaway

Ch.5 의 5 가지 교훈
  1. Time-reversal trick 의 universality — Left censoring (§ 5.2) 과 right truncation (§ 5.3) 모두 시간축 뒤집기로 Ch.4 framework 으로 환원. 두 sampling scheme 의 구조적 대칭성.

  2. Turnbull self-consistency 는 EM 의 비모수 일반화 — Double censoring 의 1974 알고리즘과 interval censoring 의 1976 NPMLE 가 모두 § 4.2 self-consistency (Efron 1967) 의 양방향 / 다중구간 일반화. EM 알고리즘의 깊은 통일성.

  3. Cohort life table = grouped KM — Thompson 1977: 구간 길이 → 0 면 life table = KM. 두 추정량이 본질적으로 같은 framework, 단지 관측 단위가 다름.

  4. 위험집합의 정의가 framework 의 핵심 — Ch.4 우측 censoring: \(Y_i = \#\{T_j \geq t_i\}\). Ch.4 좌절단: \(Y_i = \#\{L_j < t_i \leq T_j\}\). Ch.5 life table: \(Y_j = Y'_j - W_j/2\). 데이터 구조가 바뀌어도 위험집합 재정의로 framework 일반화.

  5. 임상적 함의 — 우측 절단 보정의 historical impact — 1980 년대 AIDS 잠복기 추정 (Lagakos 1988) 이 우측 절단 무시 시 5 년+ 잠복기 과소 추정. 통계적 도구가 공중보건 의사결정에 직접 영향. 적절한 sampling scheme 처리의 중요성.

9 관련 주제

선행 지식

후속 주제

  • Ch.5 deep-dive 편 (§ 5.5 exercises 풀이 + 더 깊은 Turnbull 알고리즘)
  • Ch.6 — Kernel Hazard Smoothing · Excess Mortality · Bayesian NPMLE
  • Ch.7 — Log-rank · Wilcoxon · Tarone-Ware
  • Ch.9 — Cox PH with Left Truncation (Ch.5 의 좌절단 일반화)

관련 개념

  • EM 알고리즘 (Dempster-Laird-Rubin 1977) — Turnbull self-consistency 의 일반론
  • 인구통계 life table (insurance · demography) — 식 5.4.1 의 actuarial 버전
  • AIDS 잠복기 추정의 historical case (Brookmeyer-Liao 1990, Bacchetti 1990)

Subscribe

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