§ 10.3 — NIMH 정신분열증 데이터의 4 범주 Ordinal 분석

IMPS 79 의 7 범주 → 4 범주 재범주화 · Random Intercept (식 10.23-10.24, Table 10.2) · Random Intercept + Trend (식 10.25, Cholesky 식 10.26-10.27, Table 10.3) · ICC = 0.53 · LR vs Random Intercept (χ²₂ = 77.90) · 절편-기울기 상관 -0.41 의 두 해석 · 비례 오즈 가정 검정 (χ²₆ = 3.71) · Ch.9 이항 분석과의 종합 비교

Hedeker & Gibbons (2006) Ch.10 §10.3 의 자세한 풀이. Ch.9 의 NIMH Schizophrenia Collaborative Study 데이터를 ordinal (4 범주) 로 재범주화 — IMPS 79 의 7 범주를 (1) normal or borderline / (2) mildly or moderately ill / (3) markedly ill / (4) severely or 가장 extremely ill 의 4 범주로. Figure 10.6-10.7 의 그룹별 비율 추이, Figure 10.8 의 3 cumulative logits 시각화, Random Intercept 모형 (식 10.23-10.24) 의 Table 10.2 결과 (Drug × Time -1.206 p<.001, ICC = 0.53), Random Intercept + Trend 모형 (식 10.25) 의 Cholesky 표현 (식 10.26-10.27), Table 10.3 결과 (Drug × Time -1.724 p<.001, σ_v0² = 7.13, σ_v1² = 2.06, r = -0.41), LR test vs random intercept (χ²₂ = 77.90 p<.001) 로 random trend 강하게 유의화. 절편- 기울기 음의 상관 -0.41 의 두 가지 해석 (regression to mean vs floor effect), EB trajectory (Figure 10.9-10.10), marginal 적합 (Figure 10.11), 비례 오즈 가정 검정 (χ²₆ = 3.71 not significant), 그리고 Ch.9 이항 분석과의 결과 비교까지 포함.

Statistics
저자

Kwangmin Kim

공개

2026년 05월 06일

1 들어가며 — Ch.9 NIMH 이항 분석의 ordinal 확장

§ 9.7 ~ 9.7.3 (NIMH 이항 분석, 09-6 ~ 09-7) 에서 IMPS 79 점수를 mildly ill (3) 과 moderately ill (4) 사이에서 이항화해 분석했다. § 10.3 는 같은 데이터의 원래 7 범주를 4 범주 ordinal 로 사용 — 정보 손실 없이 더 풍부한 분석.

Ch.9 이항 분석과의 차이
항목 Ch.9 (이항) § 10.3 (4 범주 ordinal)
응답 변수 \(Y \in \{0, 1\}\) (“moderately ill 이상” 여부) \(Y \in \{1, 2, 3, 4\}\) (4 단계 중증도)
절단점 0 자동 (logistic 표준) 3 개 자유 추정 (\(\gamma_1 = 0\) 고정, \(\gamma_2, \gamma_3\) 추정)
정보 활용 부분 (이항화 손실) 완전
추가 분석 비례 오즈 가정 검정
모수 수 4 고정 + random 4 고정 + 2 절단점 + random
한 줄 요약

“§ 10.3 = Ch.9 의 NIMH 데이터를 7 → 4 범주 ordinal 로 분석. 같은 패턴 발견 — Drug × Time 강하게 유의 (random intercept p<.001, random intercept + trend p<.001), 환자 이질성 매우 큼 (ICC = 0.53), random trend 추가 강하게 유의 (LR χ²₂ = 77.90). 절편-기울기 상관 -0.41 의 두 해석 (regression to mean vs IMPS79 floor effect). 비례 오즈 가정은 데이터에 적합 (LR χ²₆ = 3.71, df = 6, p > .05). 결론: 같은 임상적 결론을 더 풍부한 모수 정보로 도출. ordinal 모형이 이항보다 정보가 많지만 결론은 일관.”

2 § 10.3 — 데이터 재범주화

2.1 IMPS 79 의 4 범주 ordinal

7 범주 → 4 범주 변환

원래 IMPS 79 척도 (Inpatient Multidimensional Psychiatric Scale, Item 79 “Severity of Illness”): 0 ~ 7 점 (8 단계).

§ 10.3 의 재범주화:

새 범주 원래 점수 범위 임상 해석
1 0-2 normal or borderline mentally ill
2 3-4 mildly or moderately ill
3 5 markedly ill
4 6-7 severely or 가장 extremely ill

Ch.9 의 이항화 (mildly vs moderately) 가 본 4 범주의 1-2 vs 3-4 절단점에 해당.

직관 — 재범주화의 임상적 의미

7 범주를 4 범주로 줄이는 이유:

  1. 표본 분산: 7 범주에 환자가 골고루 분포하지 않음. 일부 범주에 sparse → 추정 불안정.
  2. 임상적 의미 단위: 임상에서는 보통 4 단계 (normal / mild-moderate / marked / severe) 가 의사결정 단위.
  3. 비례 오즈 가정의 작동성: 범주가 너무 많으면 비례 가정이 모든 절단점에서 깨질 가능성 ↑. 4 범주가 절약과 정보의 균형.

Ch.9 이항화와의 비교:

  • 이항화: 1-2 vs 3-4 (mildly vs moderately) 한 절단점만 사용. 다른 절단점 (normal vs mild, marked vs severe) 정보 손실.
  • 4 범주: 1-2-3 절단점 모두 활용. 정보 풍부.

→ § 10.3 의 결과가 Ch.9 결과와 비슷하지만 더 정확한 표준오차 + 추가적 임상 정보 (각 범주에서의 처치 효과).

2.2 Figure 10.6-10.7 — 그룹별 4 범주 비율 추이

시각적 패턴

Placebo (Figure 10.6) 와 Drug (Figure 10.7) 그룹의 4 범주 비율 추이 (4 primary timepoints: 0, 1, 3, 6 weeks):

Placebo 그룹:

  • “Normal” (범주 1): 시간 따라 증가 (느리게).
  • “Mild/mod” (범주 2): 시간 따라 약간 증가.
  • “Marked” (범주 3): 시간 따라 약간 감소.
  • “Severe” (범주 4): 시간 따라 감소.

Drug 그룹:

  • “Normal” (범주 1): 시간 따라 빠르게 증가.
  • “Mild/mod”: 약간 증가.
  • “Marked”: 감소.
  • “Severe”: 빠르게 감소.

→ 두 그룹 모두 호전 패턴 (severe ↓, normal ↑) 이지만 drug 그룹의 변화가 더 빠르고 큼.

직관 — Ordinal 시각화의 강점

이항 분석에서는 한 그래프 (P(moderately ill) 추이) 만 봤지만, ordinal 분석에서는 4 개 범주 모두의 추이:

  • “Severe → normal 로 가는 경로” 전체가 보임.
  • 약효가 어떤 단계에 집중되는지 (예: severe → marked, 또는 marked → mild) 파악 가능.
  • 임상적 시사: 약효가 가장 심한 환자에게 더 집중되는지, 모든 단계에 균등한지.

이 정보가 약물의 임상적 가치 평가에 직접 활용 — 단순 “약효 있음/없음” 판정 너머의 mechanism 이해.

2.3 Figure 10.8 — 3 Cumulative Logits 의 시각화

3 cumulative logits 의 의미

4 범주에서는 3 개 cumulative logit:

  • 첫 cumulative logit (top plot): \(\log[P(Y=4) / P(Y \in \{1,2,3\})]\) = “severe” vs “non-severe” 의 odds.
  • 둘째 cumulative logit (middle): \(\log[P(Y \in \{3,4\}) / P(Y \in \{1,2\})]\) = “marked or severe” vs “normal/mild” 의 odds.
  • 셋째 cumulative logit (bottom): \(\log[P(Y \in \{2,3,4\}) / P(Y=1)]\) = “mild or worse” vs “normal” 의 odds.

각 그룹 (placebo, drug) 별로 시간에 따른 추이.

직관 — 비례 오즈의 시각적 진단

비례 오즈가 성립하면 그룹 간 차이 (drug - placebo) 가 세 cumulative logit 모두 동일 — 세 그래프에서 두 그룹 trend line 의 세로 간격이 동일.

비례 오즈 위반의 시각적 신호:

  • 한 cumulative logit 에서는 차이 큼, 다른 곳에서는 작음 → location 변동 (§ 10.2.1 partial PO).
  • 트렌드 모양 자체가 다름 → 분산 차이 (§ 10.2.2 scaling).

저자의 결론: “visual inspection of the proportional odds assumption is inconclusive” — 시각적 검토만으로 결론 내기 어려움. 통계적 검정 필요 (§ 10.3 끝부분).

셋째 cumulative logit 의 baseline 결측: “off the map for the first timepoint because very few subjects were classified as normals at the baseline visit” — week 0 에 normal 범주 환자가 거의 없어 logit 계산 불가능. 초기 환자가 모두 심한 상태로 시작했다는 사실의 시각적 표현.

3 Random Intercept Ordinal Logistic Regression

3.1 모형 정의 — 식 (10.23-10.24)

Level-1 (식 10.23)

3 cumulative logit (\(c = 1, 2, 3\)) 모두에 대해:

\[ \log \left[ \frac{P_{ijc}}{1 - P_{ijc}} \right] = \gamma_c - \left[ b_{0i} + b_{1i} \sqrt{\text{Week}_j} \right] \tag{10.23} \]

Level-2 (식 10.24) — Random intercept만

\[ b_{0i} = \beta_0 + \beta_2 \text{Drug}_i + \upsilon_{0i} \] \[ b_{1i} = \beta_1 + \beta_3 \text{Drug}_i \tag{10.24} \]

랜덤 효과: \(\upsilon_{0i} \sim \mathcal{N}(0, \sigma_v^2)\) — 환자별 baseline 잠재 변수 차이.

직관 — 각 모수의 임상적 해석

식 (10.23-10.24) 의 4 고정 효과 + 2 절단점 + 1 random:

  • \(\beta_0\): placebo (Drug = 0) 환자의 week 0 기준 logit (절편). 첫 cumulative logit 의 평균.
  • \(\beta_1\): placebo 환자의 sqrt(week) 1 단위당 logit 변화 — 자연 회복 + 입원 효과.
  • \(\beta_2\): drug 의 baseline logit 차이 — RCT 잘 됐으면 0.
  • \(\beta_3\): drug × time cross-level interaction — 약효의 차등 시간 효과. 임상적 핵심.
  • \(\gamma_2, \gamma_3\): 절단점 (\(\gamma_1 = 0\) 고정). 4 범주의 상대적 분포.
  • \(\upsilon_{0i}\): 환자 random intercept (4 cumulative logit 모두에 동일하게 적용 — proportional odds).

식 (10.23) 의 \(\beta_1, \beta_3\) 가 모든 cumulative logit 에 같은 값 — proportional odds 가정의 직접 표현.

3.2 Table 10.2 — Random Intercept 결과

표 — Random Intercept Ordinal Logistic Results (N = 437)
모수 Estimate SE \(Z\) \(p <\)
Intercept (\(\beta_0\)) 5.858 0.343 17.08 .001
Threshold 2 (\(\gamma_2\)) 3.033 0.132 22.91 .001
Threshold 3 (\(\gamma_3\)) 5.152 0.179 28.74 .001
Drug (\(\beta_2\)) -0.055 0.311 -0.18 .86
Time (\(\beta_1\)) -0.766 0.120 -6.39 .001
Drug × Time (\(\beta_3\)) -1.206 0.133 -9.06 .001
Intercept SD (\(\sigma_v\)) 1.944 0.128

\(-2 \log L = 3402.72\)

직관 — Ch.9 이항 분석과의 비교

Ch.9 NIMH random intercept (Table 9.4) 와 비교:

모수 Ch.9 이항 (Table 9.4) § 10.3 ordinal (Table 10.2) 변화
Drug -0.025 (p=.97) -0.055 (p=.86) 거의 동일 (둘 다 비유의)
Time -1.500 (p<.001) -0.766 (p<.001) 약간 작음
Drug × Time -1.015 (p<.001) -1.206 (p<.001) 약간 큼
Intercept SD 2.116 1.944 약간 작음

임상적 결론 동일:

  • Drug 주효과 비유의 (RCT 정합).
  • Time 효과 강한 음수 (호전).
  • Drug × Time 강한 음수 (약효의 차등 효과).

효과 크기 차이의 원인:

  • 잠재 분산 척도가 다름 (cumulative logit 의 분포 가정).
  • Ordinal 의 정보 풍부함이 표준오차에 반영 → z-statistic 더 크거나 비슷.

ICC 계산:

\[ \widehat\rho = \frac{1.944^2}{1.944^2 + \pi^2/3} = \frac{3.779}{3.779 + 3.290} = 0.53 \]

→ Ch.9 의 0.58 와 비슷. 환자 이질성이 매우 큼 (잠재 변동의 53 % 가 환자 간 차이).

시간 측정 간격의 영향: 본문 인용 — “measurement schedules with intervals closer in time (e.g., weeks) yield higher ICCs than those with distal time intervals (e.g., months)”. NIMH 의 매주 측정이 ICC 를 높임.

3.3 절단점 (\(\gamma_2, \gamma_3\)) 의 해석

직관 — 4 범주의 baseline 분포

\(\gamma_1 = 0\) (고정), \(\gamma_2 = 3.033\), \(\gamma_3 = 5.152\), intercept \(\beta_0 = 5.858\) 로 placebo 환자의 week 0 cumulative logit:

  • 첫 cumulative logit (\(P(Y=1)\) 의 logit): \(0 - 5.858 = -5.858\)\(P(Y=1) = \Psi(-5.858) \approx 0.003\).
  • 둘째 cumulative logit (\(P(Y \leq 2)\) 의 logit): \(3.033 - 5.858 = -2.825\)\(P(Y \leq 2) = \Psi(-2.825) \approx 0.056\).
  • 셋째 cumulative logit (\(P(Y \leq 3)\) 의 logit): \(5.152 - 5.858 = -0.706\)\(P(Y \leq 3) = \Psi(-0.706) \approx 0.331\).
  • \(P(Y = 4)\) = \(1 - 0.331 = 0.669\).

→ Placebo 환자의 week 0 분포 (P=1, 2, 3, 4) ≈ (0.003, 0.053, 0.275, 0.669).

임상적 해석:

  • Week 0 에 환자의 67 % 가 “severe” (범주 4).
  • 28 % 가 “marked” (범주 3).
  • 5 % 정도 가 “mild/moderate” (범주 2).
  • 거의 없는 (0.3 %) 환자 만 “normal” (범주 1).

→ baseline 표본이 거의 모두 심한 상태. RCT 의 정합성 + 약효 검출의 sensitivity 보장.

4 Random Intercept and Trend Ordinal Model

4.1 모형 정의 — 식 (10.25-10.27)

Level-2 (식 10.25)

기울기까지 random:

\[ b_{0i} = \beta_0 + \beta_2 \text{Drug}_i + \upsilon_{0i} \] \[ b_{1i} = \beta_1 + \beta_3 \text{Drug}_i + \upsilon_{1i} \tag{10.25} \]

\(\upsilon_i = (\upsilon_{0i}, \upsilon_{1i})^\top \sim \mathcal{N}_2(0, \Sigma_v)\). \(\Sigma_v = TT^\top\) 의 Cholesky.

Reduced form

Level-1 + Level-2 결합:

\[ \log \left[ \frac{P_{ijc}}{1 - P_{ijc}} \right] = \gamma_c - \left[ \beta_0 + \beta_1 \sqrt{W_j} + \beta_2 D_i + \beta_3 (D_i \sqrt{W_j}) + \upsilon_{0i} + \upsilon_{1i} \sqrt{W_j} \right] \]

Cholesky factor — 식 (10.26-10.27)

\[ T = \begin{bmatrix} \sigma_{\upsilon_0} & 0 \\ \frac{\sigma_{\upsilon_{01}}}{\sigma_{\upsilon_0}} & \left( \sigma_{\upsilon_1}^2 - \frac{\sigma_{\upsilon_{01}}^2}{\sigma_{\upsilon_0}^2} \right)^{1/2} \end{bmatrix} \]

비표준화 ↔︎ 표준화 변환 (식 10.26-10.27):

\[ \upsilon_{0i} = \sigma_{\upsilon_0} \theta_{0i} \]

\[ \upsilon_{1i} = \frac{\sigma_{\upsilon_{01}}}{\sigma_{\upsilon_0}} \theta_{0i} + \left( \sigma_{\upsilon_1}^2 - \frac{\sigma_{\upsilon_{01}}^2}{\sigma_{\upsilon_0}^2} \right)^{1/2} \theta_{1i} \]

\(\theta_{0i}, \theta_{1i} \sim \mathcal{N}(0, 1)\) 독립.

직관 — Cholesky 의 명시적 표현

Cholesky factor \(T\)\(2 \times 2\) 사례:

  • \(T_{11} = \sigma_{\upsilon_0}\) (절편 SD).
  • \(T_{21} = \sigma_{\upsilon_{01}} / \sigma_{\upsilon_0}\) (상관 정보 + 절편 SD).
  • \(T_{22} = \sqrt{\sigma_{\upsilon_1}^2 - \sigma_{\upsilon_{01}}^2 / \sigma_{\upsilon_0}^2}\) (기울기의 절편-독립 부분).

식 (10.27) 의 의미:

  • \(\upsilon_{1i}\) 가 두 부분으로 분해 — 절편과 상관된 부분 + 절편-독립 부분.
  • 첫째 부분 = \((\sigma_{\upsilon_{01}}/\sigma_{\upsilon_0}) \theta_{0i}\) — 절편 effect 와 같은 \(\theta_{0i}\) 사용 → 상관 발생.
  • 둘째 부분 = \((\cdot) \theta_{1i}\) — 독립 \(\theta_{1i}\).

이 표현이 상관 구조의 자연스러운 분해 — 회귀 분석의 partial 효과 개념과 일관.

4.2 Table 10.3 — Random Intercept + Trend 결과

표 — Random Intercept + Trend Ordinal Logistic Results (N = 437)
모수 Estimate SE \(Z\) \(p <\)
Intercept 7.309 0.484 15.10 .001
Threshold 2 (\(\gamma_2\)) 3.912 0.214 18.29 .001
Threshold 3 (\(\gamma_3\)) 6.528 0.291 22.43 .001
Drug 0.111 0.402 0.28 .78
Time -0.875 0.236 -3.71 .001
Drug × Time -1.724 0.270 -6.40 .001
Cholesky
Intercept SD (\(T_{11}\)) 2.669 0.256 \(\widehat\sigma_{\upsilon_0}^2 = 7.13\)
Intercept-time covariance (\(T_{21}\)) -0.588 0.159 \(r = -0.41\)
Time SD (\(T_{22}\)) 1.308 0.126 \(\widehat\sigma_{\upsilon_1}^2 = 2.06\)

\(-2 \log L = 3324.82\)

직관 — 모형 정교화에 따른 효과 추정
모수 Random Intercept Random Intercept + Trend
Drug -0.055 (p=.86) +0.111 (p=.78)
Time -0.766 (p<.001) -0.875 (p<.001)
Drug × Time -1.206 (p<.001) -1.724 (p<.001)

Drug × Time 효과가 -1.206 → -1.724 로 더 큼 (약 43 % 증가). 이미 강하게 유의했지만 더 정확한 추정.

Ch.9 이항 분석과의 비교 (Table 9.6):

모수 Ch.9 이항 § 10.3 Ordinal 차이
Drug × Time -1.587 (p<.001) -1.724 (p<.001) 비슷
Intercept SD 2.726 2.669 비슷
Time SD 1.561 1.308 약간 작음
Cor -0.47 -0.41 비슷

Ordinal 분석이 이항 분석과 매우 일관된 결과. 정보가 풍부해도 결론 동일.

4.3 LR 검정 — Random Trend 의 가치

\(H_0: \sigma_{\upsilon_1}^2 = \sigma_{\upsilon_0 \upsilon_1} = 0\)

\[ \chi^2_2 = -2\log L_{\text{int}} - (-2\log L_{\text{int+trend}}) = 3402.72 - 3324.82 = 77.90 \]

자유도 2, \(p < .001\)강한 유의.

직관 — Random trend 의 가치

\(\chi^2_2 = 77.90\) 은 매우 큰 값 (자유도 2 의 .001 quantile ≈ 13.82). 압도적 유의.

해석:

  • 환자별 시간 추세 (호전 속도) 가 통계적으로 유의하게 다름.
  • Random intercept 만으로는 시간 추세의 환자 차이를 흡수 못함.
  • → Random intercept + trend 모형이 데이터에 더 적합.

Ch.9 와의 비교:

  • Ch.9 이항: \(\chi^2_2 = 22.31\) (Table 9.6).
  • § 10.3 ordinal: \(\chi^2_2 = 77.90\).

Ordinal 분석에서 random trend 의 증거가 훨씬 강함 — 정보가 풍부하면 변동 검출 능력 ↑. 이것이 ordinal 분석의 또 다른 강점.

Boundary 보정: \(\sigma_{\upsilon_1}^2 = 0\) 이 boundary. Self-Liang (1987) 보정 후에도 강한 유의 (검정 통계량이 너무 큼).

4.4 분산의 임상적 해석

환자 간 추세 변동의 광범위함

추정 모수에서:

  • 평균 placebo 기울기: \(\beta_1 = -0.875\).
  • 평균 drug 기울기: \(\beta_1 + \beta_3 = -0.875 - 1.724 = -2.599\).
  • 기울기 SD: \(\sqrt{2.06} = 1.435\).

95 % CI of individual slopes:

  • Placebo 환자 95 %: \(-0.875 \pm 1.96 \times 1.435 = (-3.69, 1.94)\).
  • Drug 환자 95 %: \(-2.599 \pm 1.96 \times 1.435 = (-5.42, 0.21)\).

임상적 함의:

  1. Placebo 환자의 5 % 정도가 양의 기울기 (악화) — 자연 호전 안 되고 더 심해지는 환자.
  2. Drug 환자의 5 % 정도가 양의 기울기 — 약효 안 받는 환자.
  3. Placebo 환자의 일부 (CI 의 좌측) 가 매우 가파른 음의 기울기 — 약물 없이도 빠르게 호전.

→ “그룹 평균” 효과 너머의 광범위한 환자 trajectory. Personalized medicine 의 정량적 토대.

4.5 절편-기울기 음의 상관 -0.41 의 두 가지 해석

두 가지 가능한 인과 메커니즘

상관 \(r_{\upsilon_0 \upsilon_1} = -0.41\) — “절편이 큰 환자 (baseline 가 심함) 가 더 음의 기울기 (빠르게 호전)”.

저자 본문의 두 해석:

해석 1 — Regression to the Mean:

  • Baseline 가 매우 심한 환자가 시간이 지남에 따라 평균으로 돌아옴 (regression to the mean).
  • 통계적 인공물 — 극단값에서 시작한 측정이 다음 시점에는 평균으로 수렴.
  • 약효의 진짜 효과가 아니라 측정의 본질적 패턴.

해석 2 — IMPS 79 의 Floor Effect:

  • IMPS 79 척도가 upper bound (가장 심한 상태) 가 있음.
  • baseline 가 이미 “near the floor (가장 가벼운)” 인 환자는 더 호전될 여지가 적음 → 양의 기울기.
  • baseline 가 “near the ceiling (가장 심한)” 인 환자는 호전 여지가 많음 → 음의 기울기.
  • 측정 척도의 한계가 만드는 인공물.
직관 — 두 해석의 구분 어려움

두 해석이 같은 데이터 패턴을 만든다:

  • 둘 다 “심한 환자의 빠른 호전” 패턴.
  • 통계적으로 구분 불가능.

추가 정보 활용:

  • 임상적 메커니즘: 정신분열증의 자연사가 regression to mean 에 가까운지, 아니면 측정 척도 한계인지.
  • IMPS 79 의 분포 특성: 척도의 ceiling/floor 가 명확한지.
  • 다른 측정 도구와의 비교: HAMD 같은 다른 척도에서도 같은 상관이 나타나는지.

Hedeker 본문의 결론: 두 해석을 모두 가능성으로 제시하고 임상적 판단에 맡김.

정확한 답은 데이터로부터 못 찾음 — 모형이 data-generating mechanism 의 ambiguity 를 정확히 반영. 이것이 좋은 통계적 분석의 자세 — 가능한 해석을 모두 제시 + 한계 명시.

5 Empirical Bayes Trajectories — Figure 10.9-10.10

5.1 환자별 “normal” 확률 추이

식 — 환자별 fitted P(Y = 1)

Random effects EB 추정 (\(\widehat\upsilon_{0i}, \widehat\upsilon_{1i}\)) 대입:

\[ \widehat P(Y_{ij} = 1) = \frac{1}{1 + \exp[7.31 + 0.11 D_i - 0.88 \sqrt{W_j} - 1.72 D_i \sqrt{W_j} + \widehat\upsilon_{0i} + \widehat\upsilon_{1i} \sqrt{W_j}]} \]

직관 — 다른 범주 확률의 산출

다른 범주 확률은 인접 cumulative 의 차이:

\[ \widehat P(Y_{ij} = 2) = \widehat\Psi(\widehat\gamma_2 - (\cdots)) - \widehat P(Y_{ij} = 1) \] \[ \widehat P(Y_{ij} = 3) = \widehat\Psi(\widehat\gamma_3 - (\cdots)) - \widehat P(Y_{ij} = 2) \] \[ \widehat P(Y_{ij} = 4) = 1 - \widehat\Psi(\widehat\gamma_3 - (\cdots)) \]

→ 한 모형에서 4 개 범주 확률 모두 산출. 이항 분석의 한계 (한 절단점 정보만) 를 넘어선다.

Figure 10.9-10.10 의 패턴

저자의 본문 인용:

“though some placebo patients do improve across time, not many have too great a probability of being in the normal category by the end of the study. For the drug group there is considerable heterogeneity, though many subjects have a good chance of being normal by the last timepoint.”

해석:

  • Placebo 환자들: 대부분 “normal” 확률이 낮은 trajectory. 일부만 빠르게 호전 (Figure 10.9 의 가파른 곡선).
  • Drug 환자들: 광범위한 trajectory. 많은 환자가 마지막 시점에 “normal” 확률이 높음 (Figure 10.10).

이 시각화의 임상적 가치:

  • Treatment success 의 정의: 단순 “약효 받음/안 받음” 이 아닌, “마지막 시점에 normal 까지 갈 확률” 같은 구체적 outcome.
  • Treatment failure 식별: Drug 그룹 중 끝까지 “normal” 확률 낮은 환자 — 다른 약물 또는 추가 처치 필요.
  • Spontaneous recovery 인지: Placebo 그룹 중 일부 빠르게 호전 — 자연 회복 가능 환자군.

6 Marginalization — Figure 10.11

6.1 Marginal Probabilities 의 산출

SAS PROC IML 의 marginalization 절차 (4 panel for 4 categories)

§ 9.7.2 / 10-2 의 절차와 같음:

  1. Step 1: 절단점과 회귀 부분 분리 — \(\widehat y_i = X_i \widehat \beta\).
  2. Step 2: Marginalization vector \(\widehat s = \sqrt{\widehat\sigma_v^2 / \sigma^2 + 1}\) (또는 random effects 차원에 따라 일반화).
  3. Step 3: 각 절단점별 standardized cumulative logit — 4 범주이면 3 개.
  4. Step 4: Cumulative probability 차이로 cell probability 4 개 산출.

본문 Table 10.4-10.5 의 SAS 코드가 이 절차의 직접 구현 (Random intercept + trend 모형 기준).

직관 — Marginal 적합의 평가

Figure 10.11 의 4 panel — normal, mild, marked, severe 각각의 marginal probability 추이:

  • 모든 4 panel 에서 marginal curve 와 관측 비율 일치도 좋음.
  • → 모형이 marginal 패턴을 잘 포착.

Ch.9 이항 분석과의 비교 (Figure 9.13, 9.17):

  • 이항: 한 panel (P(“moderately ill”) 추이) 만 평가 가능.
  • Ordinal: 4 panel 모두 평가 — 각 범주별 적합 품질 검토.

Ordinal 분석의 추가 진단 가치:

  • 어떤 범주에서 적합이 잘 안 되는지 식별 가능.
  • 특정 범주의 적합 부족 → 비례 오즈 가정 위반 의심 → § 10.2.1 partial PO 검토.
  • 4 panel 중 적합 잘 되면 모형 선택의 강한 증거.

7 비례 오즈 가정 검정

Nonproportional odds 모형과의 LR 검정

Nonproportional odds 모형 — 3 covariate (Drug, Time, Drug × Time) 가 3 cumulative logit 에 별도 효과 = 9 covariate parameter.

\(-2 \log L_{\text{nonproportional}} = 3321.11\).

LR 검정:

\[ \chi^2 = -2\log L_{\text{proportional}} - (-2\log L_{\text{nonproportional}}) = 3324.82 - 3321.11 = 3.71 \]

자유도 = 9 - 3 = 6 (nonproportional 의 추가 모수).

p > .05 (자유도 6 의 .05 quantile ≈ 12.59).

결론: 비례 오즈 가정이 데이터에 적절. § 10.2.1 의 partial PO 모형 불필요.

직관 — 검정 결과의 함의

NIMH 데이터에서 비례 오즈 가정이 만족된다는 것:

  • Drug 효과의 OR (drug vs placebo) 가 3 cumulative logit 모두 동일.
  • 즉 약효가 “severe → marked”, “marked → mild”, “mild → normal” 모든 단계에서 같은 비율로 작용.
  • 약물이 어느 특정 단계에 집중되지 않고 균등하게 호전 효과.

Partial PO 모형이 필요한 사례 (§ 10.4):

  • 노숙자 보건서비스 (§ 10.4) 에서는 section 8 certificate 가 비례 위반 — independent housing 진행에는 효과 큼, community vs street 비교에는 미미.
  • 그런 경우 partial PO 모형이 필수.

NIMH 데이터의 비례 가정 만족은 약효의 균등성 이라는 임상적 정보. 이것 자체가 약효 메커니즘에 대한 단서.

8 Ch.9 이항 vs § 10.3 Ordinal 분석의 종합 비교

두 chapter 의 결과 비교
항목 Ch.9 이항 § 10.3 Ordinal 차이
응답 정보 부분 (이항화) 완전 (4 범주) Ordinal 풍부
Drug × Time (random int) -1.015 -1.206 비슷
Drug × Time (random int+trend) -1.587 -1.724 Ordinal 약간 큼
ICC (random int) 0.58 0.53 비슷
LR (random int+trend vs random int) 22.31 77.90 Ordinal 강함
절편-기울기 cor (random int+trend) -0.47 -0.41 비슷
비례 오즈 가정 검정 \(\chi^2_6 = 3.71\) (만족) Ordinal 의 추가 분석
모형 선택 권고

같은 데이터, 두 분석의 결론이 일관:

  • 이항 분석의 결론 (Drug × Time 강한 효과, 환자 이질성 큼) 이 ordinal 분석에서 그대로 확인.
  • Ordinal 분석이 추가 정보 제공 (각 범주별 효과, 비례 오즈 가정 검정, 더 강한 random trend 증거).

실무 권고 — 응답이 ordinal 이면 ordinal 모형 우선:

  1. 정보 손실 회피: 이항화로 정보 잃음. Ordinal 이 자연.
  2. 표본 효율: 같은 sample size 에서 ordinal 이 더 정확.
  3. 추가 진단: 비례 오즈 가정 검정 등 모형 적합 평가의 추가 도구.
  4. 임상적 해석: 각 범주의 처치 효과를 별도로 평가 가능 (partial PO 로 확장 시).

이항 분석의 자리:

  • 응답이 본질적으로 이항 (Y/N 결정).
  • 이항화 후의 임상 해석이 명확 (예: “회복 vs 회복 안 함”).
  • Ordinal 모형의 추정이 sparse 데이터로 어려운 경우.

NIMH 같은 임상 RCT 에서는 ordinal 분석이 기본, 이항화는 secondary analysis 또는 시각화 용도.

9 응용 분야

분야 Ordinal 응답 NIMH 와의 평행
정신과 RCT IMPS, HAMD, BPRS 의 4-5 단계 본 시연
종양 임상 RECIST (CR/PR/SD/PD) Drug × Time 의 ordinal
통증 관리 NRS 0-10 → 4 범주화 Random trend 환자 차이
기능 평가 ADL, IADL 의 다단계 절편-기울기 음의 상관
만족도 조사 Likert 5/7 점 비례 오즈 가정 검정
교육 평가 학기말 등급 (A/B/C/D/F) Marginal 적합 평가

10 코드 예시

10.1 Step 1: 4 범주 NIMH-like 데이터 시뮬레이션

import numpy as np
import pandas as pd


def simulate_nimh_ordinal(seed: int = 2026) -> pd.DataFrame:
    """Table 10.3 의 추정값을 사용한 NIMH-like 4 범주 ordinal 시뮬레이션."""
    rng = np.random.default_rng(seed)

    # 표 9.1 의 attrition pattern (간략화)
    n_placebo = 108
    n_drug = 329
    n_times = 4  # week 0, 1, 3, 6
    sqrt_weeks = [0.0, 1.0, np.sqrt(3), np.sqrt(6)]

    # 추정값 (Table 10.3)
    intercept = 7.309
    threshold2 = 3.912
    threshold3 = 6.528
    beta_drug = 0.111
    beta_time = -0.875
    beta_drug_time = -1.724
    sigma_v0 = 2.669
    sigma_v01_per_v0 = -0.588 / 2.669  # = T_21
    sigma_v1_indep = np.sqrt(1.308**2 - (sigma_v01_per_v0 * 2.669)**2 / 2.669**2)

    rows = []
    subject_id = 0
    for group, N in [("placebo", n_placebo), ("drug", n_drug)]:
        drug = 1 if group == "drug" else 0
        for i in range(N):
            # 환자 random effects (식 10.26-10.27)
            theta_0 = rng.normal()
            theta_1 = rng.normal()
            v_0i = sigma_v0 * theta_0
            v_1i = sigma_v01_per_v0 * theta_0 + sigma_v1_indep * theta_1

            for j, sw in enumerate(sqrt_weeks):
                # 잠재 변수 위치 (식 reduced form)
                eta = -(intercept + beta_drug * drug + beta_time * sw +
                        beta_drug_time * drug * sw + v_0i + v_1i * sw)
                # 잠재 변수
                y_latent = eta + rng.logistic()
                # 4 범주 분류
                if y_latent < 0:
                    y = 1
                elif y_latent < threshold2:
                    y = 2
                elif y_latent < threshold3:
                    y = 3
                else:
                    y = 4
                rows.append({"subject": subject_id, "drug": drug,
                             "sqrt_week": sw, "y": y})
            subject_id += 1
    return pd.DataFrame(rows)


df = simulate_nimh_ordinal()
print(f"전체: {len(df)} 행, {df['subject'].nunique()} 환자")
print(f"\n그룹·시점별 응답 분포 (placebo):")
print(df[df['drug'] == 0].groupby(['sqrt_week', 'y']).size().unstack(fill_value=0))
시뮬레이션의 검증

논문의 Table 10.3 추정값으로 데이터 생성 → 다시 적합하면 추정값 회복 가능. 본 코드는 mixed-effects 의 random intercept + trend 의 정확한 시뮬레이션.

식 (10.27) 의 \(\upsilon_{1i} = (\sigma_{v_{01}}/\sigma_{v_0}) \theta_{0i} + (\sigma_{v_1}^2 - \sigma_{v_{01}}^2/\sigma_{v_0}^2)^{1/2} \theta_{1i}\) 가 절편-기울기 음의 상관을 만들어냄.

10.2 Step 2: Random Intercept Ordinal 적합 (R)

library(ordinal)


# Random intercept ordinal proportional odds (식 10.23-10.24)
fit_int <- clmm(factor(y, ordered = TRUE) ~ drug + sqrt_week + drug:sqrt_week
                + (1 | subject),
                data = df, link = "logit")
summary(fit_int)

# 표 10.2 와 비교
# - threshold (γ_2, γ_3): clmm 의 "Threshold coefficients"
# - β_2 (drug): clmm 의 "drug" coefficient
# - β_1 (sqrt_week)
# - β_3 (drug:sqrt_week)
# - σ_v: VarCorr() 로 추출

# ICC (식 §10.3 의 0.53 와 비교)
sigma_v_sq <- VarCorr(fit_int)$subject[1, 1]
icc <- sigma_v_sq / (sigma_v_sq + pi^2 / 3)
cat("\nICC =", round(icc, 3), "(논문: 0.53)\n")
R clmm 의 출력 해석

clmmsummary() 에서:

  • Threshold coefficients: 식 (10.23) 의 \(\gamma_c\) — 단조 증가.
  • Coefficients: \(\beta_1, \beta_2, \beta_3\) — 식 (10.23-10.24) 의 부호 관행 따름.
  • Random effects: \(\sigma_v\) 의 분산.

모수 부호의 주의: clmm 은 식 (10.1) 의 \(\gamma_c - x^\top\beta\) 표기 사용. R 의 polr 와 같은 부호. SAS PROC LOGISTIC 의 부호와 다를 수 있음 (식 10.6 형태) — 출력 해석 시 표기 확인 필수.

10.3 Step 3: Random Intercept + Trend 적합 + LR 검정

# Random intercept + trend (식 10.25)
fit_int_trend <- clmm(factor(y, ordered = TRUE) ~ drug + sqrt_week + drug:sqrt_week
                      + (sqrt_week | subject),
                      data = df, link = "logit")
summary(fit_int_trend)

# Cholesky 추출 후 Sigma_v 복원
VarCorr(fit_int_trend)$subject  # 직접 행렬 형태
attr(VarCorr(fit_int_trend)$subject, "correlation")  # 상관계수

# LR test vs random intercept (논문: chi^2_2 = 77.90, p<.001)
anova(fit_int, fit_int_trend)
R clmm 의 random slope 적합 한계

clmm 은 random intercept + slope 의 다중 random effects 적합 가능하지만, nAGQ > 1 (adaptive Gauss-Hermite) 옵션이 random slope 가 있으면 작동 안 함 — Laplace approximation 만 사용.

→ 정확도 약간 손실. 정확한 추정은 SAS PROC NLMIXED 또는 brms (Bayesian) 권고.

LR test 결과 검증:

  • anova(fit_int, fit_int_trend)\(\chi^2\) 값이 ~77 근처면 시뮬레이션이 논문 데이터와 비슷.
  • p-value < .001 이면 random trend 의 유의성 확인.

10.4 Step 4: 비례 오즈 가정 검정

library(VGAM)


# Proportional odds 모형 (single-level, mixed-effects 검정은 어려움)
fit_po <- vglm(factor(y, ordered = TRUE) ~ drug + sqrt_week + drug:sqrt_week,
               family = cumulative(parallel = TRUE, link = "logitlink"),
               data = df)

# Nonproportional odds (모든 covariate 가 절단점 가변)
fit_npo <- vglm(factor(y, ordered = TRUE) ~ drug + sqrt_week + drug:sqrt_week,
                family = cumulative(parallel = FALSE, link = "logitlink"),
                data = df)

# LR test (자유도 = 추가 covariate 수 = 2 * 3 = 6, 논문과 일치)
lrtest(fit_po, fit_npo)
# 논문: chi^2 = 3.71, df = 6, not significant
Single-level vs Mixed-effects 의 비례 오즈 검정

본 코드는 single-level 비례 오즈 검정 (random effects 무시). Mixed-effects 모형의 비례 오즈 검정은:

  • frequentist: SAS PROC NLMIXED 직접 코딩.
  • Bayesian: brmscs() 인수로 partial proportional odds 모형 적합 후 비교.

Single-level 검정의 근사적 활용:

  • 비례 오즈 가정은 보통 covariate 수준에서 결정 — random effects 의 영향 작음.
  • 단일 수준 검정 결과가 일반적으로 mixed-effects 검정과 일치.
  • → 본 코드의 single-level 검정 결과 (\(\chi^2_6 \approx 3.71\)) 가 논문 결과의 근사.

결과 해석: p > .05 면 비례 오즈 가정 채택 → 단순 proportional odds 모형 사용. p < .05 면 partial proportional odds (§ 10.2.1) 필요.

11 관련 주제

선행 지식

후속 주제 (Ch.10 sub-posts)

  • § 10.4 — 노숙자 보건서비스 (section 8 certificate, partial PO 응용)
  • § 10.5 — Ch.10 Summary

관련 개념

  • McCullagh (1980) — Proportional odds 의 원전 (NIMH 검정의 토대)
  • Hedeker & Gibbons (1994) — NIMH 데이터의 ordinal probit 분석
  • Self & Liang (1987) — LR 검정의 boundary 분포
  • McKelvey & Zavoina (1975), Winship & Mare (1984) — Ordinal 을 연속으로 처리할 때 편향
  • Lorr & Klett (1966) — IMPS 척도 원전
  • Ch.14 결측 데이터 — NIMH attrition 패턴 분석

Subscribe

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