2013-09-03 3 views
1

Im 확실하지 않음 ...이 어렵지 않을 것 같아요.하지만 생각이 어렵습니다. 다음을 실행하는 경우 :survfit() 그늘 95 % 신뢰 구간 생존율

library(survival)  
leukemia.surv <- survfit(Surv(time, status) ~ 1, data = aml) 
plot(leukemia.surv, lty = 2:3) 

생존 곡선과 95 % 신뢰 구간이 표시됩니다. 위쪽 및 아래쪽 95 % CI를 나타내는 두 줄을 표시하는 대신 ID는 위쪽 및 아래쪽 95 % 경계 사이의 영역을 음영 처리하는 것과 같습니다.

polygon()과 같은 방식으로 처리해야합니까? 모든 좌표는 요약에서 찾을 수 있습니다 ...

> summary(leukemia.surv) 
Call: survfit(formula = Surv(time, status) ~ 1, data = aml) 

time n.risk n.event survival std.err lower 95% CI upper 95% CI 
5  23  2 0.9130 0.0588  0.8049  1.000 
8  21  2 0.8261 0.0790  0.6848  0.996 
9  19  1 0.7826 0.0860  0.6310  0.971 
12  18  1 0.7391 0.0916  0.5798  0.942 
13  17  1 0.6957 0.0959  0.5309  0.912 
18  14  1 0.6460 0.1011  0.4753  0.878 
23  13  2 0.5466 0.1073  0.3721  0.803 
27  11  1 0.4969 0.1084  0.3240  0.762 
30  9  1 0.4417 0.1095  0.2717  0.718 
31  8  1 0.3865 0.1089  0.2225  0.671 
33  7  1 0.3313 0.1064  0.1765  0.622 
34  6  1 0.2761 0.1020  0.1338  0.569 
43  5  1 0.2208 0.0954  0.0947  0.515 
45  4  1 0.1656 0.0860  0.0598  0.458 
48  2  1 0.0828 0.0727  0.0148  0.462 

95 % CI 영역을 음영 처리하는 기존 기능이 있습니까?

답변

4

summary()의 데이터를 사용하여 신뢰 구간을 다각형으로하여 자신의 플롯을 만들 수 있습니다.

먼저 을 개체로 저장하십시오. 플로팅을위한 데이터는 변수 time, surv, upperlower에 있습니다.

mod<-summary(leukemia.surv) 

이제는 plot() 함수를 사용하여 플로팅 영역을 정의 할 수 있습니다. 그런 다음 polygon() 플롯 신뢰 구간을 사용하십시오. 여기서 x 값과 x 값을 역순으로 제공해야하며 y 값은 lower 값을 사용하고 upper 값을 사용하십시오. 기능이 lines() 인 경우 생존 라인을 추가하십시오. 인수 type="s"lines()에 추가하면 단계가 표시됩니다.

with(mod,plot(time,surv,type="n",xlim=c(5,50),ylim=c(0,1))) 
with(mod,polygon(c(time,rev(time)),c(lower,rev(upper)), 
       col = "grey75", border = FALSE)) 
with(mod,lines(time,surv,type="s")) 
+1

내가 실제로 단계를 볼 수 있도록 이것을 바꿀 수 있습니까? 검열 된 데이터에 대한 표시를 포함하여? – Luc

+0

@Luc는 단계 답을 얻기 위해 내 대답을 업데이트했습니다. –

관련 문제