Cox 비례위험모형
여러 설명변수를 함께 고려해 사건 위험과의 관계를 위험비로 추정하는 방법
생존곡선의 차이가 치료 때문인지, 다른 특성 때문인지 어떻게 구분할까요? Cox 비례위험모형(Cox Proportional Hazards Model)은 여러 설명변수가 사건 발생 위험과 어떤 관계가 있는지 분석하는 생존분석 방법입니다. 앞에서 배운 Kaplan–Meier 추정과 Log-rank 검정이 주로 집단별 생존 양상을 추정하거나 비교했다면, Cox 모형은 연령, 치료 여부, 질병 중증도처럼 여러 변수를 동시에 고려해 각 변수가 사건 발생 위험과 어떻게 관련되는지 추정합니다. 이 장에서는 모형의 구조와 위험비의 해석, 결과를 읽을 때 확인할 사항을 알아봅니다.
Cox 모형은 왜 필요할까?
두 치료 집단의 생존곡선이 다르더라도 그 차이가 치료 때문인지, 집단의 다른 특성 때문인지 구분하기 어려울 수 있습니다. 치료군의 환자들이 대조군보다 평균적으로 젊고 질병도 덜 심하다면, 생존곡선의 차이는 치료 효과뿐 아니라 연령과 질병 중증도의 차이에도 영향을 받았을 수 있습니다.
그림 1의 모의 자료에서 치료군은 평균 57세, 대조군은 65세입니다. 치료 여부만 넣으면 위험비가 0.56으로 치료 효과가 크게 보이지만, 연령과 중증도를 함께 넣으면 0.71로, 자료를 만들 때 넣은 실제 값 0.70에 가까워집니다. Cox 모형은 이처럼 설명변수를 함께 고려해 치료 여부가 재발 위험과 어떤 관계가 있는지, 연령이 높을수록 사망 위험이 증가하는지, 여러 변수를 고려한 뒤에도 특정 요인의 관계가 유지되는지 같은 질문에 답할 때 유용합니다.
Cox 비례위험모형의 기본 구조
Cox 모형은 위험함수를 기준으로 설명변수의 영향을 표현합니다.
h(t | X): 설명변수 X를 가진 대상의 시점 t에서의 위험함수 · h0(t): 기준 위험함수(Baseline Hazard) · X1, …, Xp: 연령, 치료 여부 등 설명변수 · β1, …, βp: 각 설명변수와 관련된 회귀계수
이 모형의 특징은 기준 위험함수 h0(t)의 형태를 특정 분포로 미리 정하지 않는다는 점입니다. 그래서 Cox 모형을 반모수적 생존모형이라고 부릅니다. 그림 2처럼 설명변수는 기준 위험곡선의 모양을 바꾸지 않고 일정한 배수로 올리거나 내리며, 이 배수 exp(β)를 위험비(Hazard Ratio, HR)로 해석합니다.
위험비(Hazard Ratio)는 무엇일까?
위험비는 두 조건 또는 집단의 순간적인 사건 발생 위험을 비교한 값입니다. 한 설명변수 Xj가 1단위 증가할 때 다른 설명변수를 동일하게 유지한다면 위험비는 다음과 같습니다.
| 위험비 | 해석 |
|---|---|
| HR = 1 | 비교하는 조건 사이에 순간적인 위험의 차이가 없음 |
| HR > 1 | 비교 대상의 순간적인 사건 위험이 더 높음 |
| HR < 1 | 비교 대상의 순간적인 사건 위험이 더 낮음 |
그림 3처럼 치료 여부의 위험비가 0.70이라면, 모형에서 고려한 다른 변수가 같고 비례위험 가정이 적절할 때 치료군의 순간적인 사건 발생 위험이 대조군보다 30% 낮다는 의미입니다.
여기서 중요한 점은 위험비가 생존확률이나 사건 발생 확률 자체의 비율은 아니라는 것입니다. 그림 4처럼 대조군의 24개월 재발 확률이 50%일 때 위험비 0.70인 치료군의 재발 확률은 38%로, 약 23% 낮을 뿐입니다. 위험비가 0.70이라고 해서 재발 확률이 30% 낮다거나 생존기간이 30% 길다고 해석하면 안 됩니다.
실제 분석 결과는 어떻게 읽을까?
질병 재발까지 걸린 시간을 분석한다고 가정하겠습니다. 설명변수는 치료 여부, 연령, 질병 중증도입니다(가상 예시).
| 변수 | 위험비(HR) | 95% 신뢰구간 | p값 |
|---|---|---|---|
| 치료군(대조군 기준) | 0.70 | 0.52–0.94 | 0.018 |
| 연령(1세 증가) | 1.02 | 1.01–1.04 | 0.006 |
| 저위험군(고위험군 기준) | 0.65 | 0.45–0.92 | 0.015 |
그림 5처럼 다른 변수를 고려했을 때 치료군의 순간적인 재발 위험은 대조군보다 약 30% 낮게, 연령이 1세 증가할 때 순간적인 재발 위험은 약 2% 높게, 저위험군의 순간적인 재발 위험은 고위험군보다 약 35% 낮게 추정되었습니다. 세 변수의 결과는 각각 다른 변수를 모형에 포함한 상태에서 해석합니다.
그림 6은 실제 위험비를 0.70, 1.02, 0.65로 정해 만든 모의 자료 500명에 Cox 모형을 적합한 결과로, 추정값 0.71, 1.03, 0.68이 실제 값과 가깝습니다. 다만 통계적으로 유의한 관계가 관찰되었다고 해서 곧바로 인과관계가 입증되는 것은 아닙니다. 특히 관찰연구에서는 측정하지 못한 교란변수가 남아 있을 수 있습니다.
위험비와 신뢰구간은 함께 봐야 할까?
위험비는 관계의 방향과 상대적인 크기를 보여주지만, 추정치의 불확실성도 중요합니다.
| 결과 | HR | 95% 신뢰구간 |
|---|---|---|
| A | 0.70 | 0.52–0.94 |
| B | 0.70 | 0.35–1.40 |
그림 7처럼 두 결과의 위험비 점추정치는 같지만 신뢰구간의 폭은 다릅니다. B는 추정의 불확실성이 더 크고, 신뢰구간에 1이 포함됩니다. 일반적인 양측 5% 유의수준에서 위험비의 95% 신뢰구간이 1을 포함하지 않으면 위험비가 1이라는 귀무가설에 반하는 통계적 근거가 있다고 판단하는 경우가 많습니다. 다만 신뢰구간과 p값은 모형과 검정 방식에 따라 함께 해석해야 합니다.
Cox 모형에서 무엇을 확인해야 할까?
Cox 모형을 적용할 때는 단순히 위험비와 p값만 확인하는 것으로 충분하지 않습니다.
어떤 사건을 분석하는지, 관찰 시작점과 시간 단위가 명확한지 확인합니다.
추적이 끝난 이유와 중도절단 가정이 적절한지 살펴봅니다.
연속변수의 관계가 선형인지, 범주형 변수의 기준집단이 적절한지 확인합니다.
설명변수의 위험비가 시간에 따라 일정하다는 가정이 적절한지 진단합니다.
위험비, 신뢰구간, p값을 함께 확인합니다.
특히 비례위험 가정은 Cox 모형의 핵심 전제 중 하나입니다. 그림 8의 빨간 선처럼 위험비가 시간에 따라 달라진다면, 하나의 위험비로 전체 관찰기간의 관계를 요약하는 것이 부적절할 수 있습니다.
Cox 모형은 언제 적합할까?
그림 9처럼 의학 및 보건 연구에서는 연령, 치료 여부, 질병 중증도 등을 고려해 사망이나 재발 위험과 관련된 요인을, 고객 이탈 연구에서는 가입 기간, 서비스 이용량, 요금제 등이 이탈까지 걸리는 시간과 어떤 관계가 있는지를, 신뢰성 분석에서는 사용 조건이나 제품 특성이 고장 발생 위험과 어떤 관계가 있는지를 분석합니다. Cox 모형은 설명변수가 여러 개이고, 중도절단을 포함한 사건시간 자료에서 변수와 사건 위험의 관계를 분석하고자 할 때 유용합니다. 다만 사건의 종류가 여러 개이거나 동일한 대상에게 사건이 반복되거나 상태 전환을 분석해야 한다면 다른 생존분석 모형이 더 적합할 수 있습니다.
연령과 질병 중증도를 보정한 Cox 비례위험모형에서 치료군의 재발 위험은 대조군보다 낮았다(HR = 0.70, 95% CI 0.52–0.94, p = .018). 연령이 1세 증가할 때 재발 위험은 2% 증가하였고(HR = 1.02, 95% CI 1.01–1.04), 저위험군은 고위험군보다 재발 위험이 낮았다(HR = 0.65, 95% CI 0.45–0.92). 비례위험 가정은 별도로 점검하였다.
여러 요인을 함께 넣고, 각 요인의 위험비를 신뢰구간과 함께 해석합니다.
- Cox 비례위험모형은 여러 설명변수를 고려해 사건 발생 위험과의 관계를 분석합니다.
- 위험비는 설명변수의 변화에 따른 순간적인 사건 위험의 상대적 차이를 나타냅니다.
- 위험비는 사건 발생 확률이나 생존기간의 비율과 같지 않습니다.
- 위험비, 95% 신뢰구간과 p값을 함께 해석해야 합니다.
- 모형을 해석하기 전에 비례위험 가정과 중도절단 조건 등을 확인해야 합니다.
다음은 07 비례위험 가정과 Schoenfeld 잔차입니다. Cox 모형에서 추정한 위험비를 전체 관찰기간에 걸쳐 해석해도 되는지, 자료를 통해 어떻게 점검할 수 있는지 알아봅니다.
Cox 모형은 기준 위험의 모양을 정하지 않고, 설명변수가 위험을 몇 배로 바꾸는지를 위험비로 추정합니다. 위험비는 확률의 비가 아니며, 신뢰구간과 함께 해석하고 비례위험 가정을 확인해야 합니다.