2017-12-22 4 views
0

여기에서는 rcs 용어로 생존 모델을 시연했습니다. rms 패키지에서 anova()가 선형성 연결을 테스트하는 방법인지 궁금합니다. 그리고 어떻게 비선형 항의 P 값을 해석 할 수 있습니까 (0.094 참조), cox 모델에 rcs() 항을 추가 할 수 있습니까?rms : anova에서 비선형 항의 P 값을 어떻게 해석 할 수 있습니까?

library(rms) 
data(pbc) 
d <- pbc 
rm(pbc, pbcseq) 
d$status <- ifelse(d$status != 0, 1, 0) 
dd = datadist(d) 
options(datadist='dd') 

# rcs model 
m2 <- cph(Surv(time, status) ~ rcs(albumin, 4), data=d) 
anova(m2) 

Wald Statistics  Response: Surv(time, status) 
Factor  Chi-Square d.f. P  
albumin 82.80  3 <.0001 
Nonlinear 4.73  2 0.094 
TOTAL  82.80  3 <.0001 

답변

0

테스트하는 적절한 방법은 두 가지 모델에서 로그 우도 (일명 ​​일탈)의 모델 비교 함께 : 완전하고 감소 :

m2 <- cph(Surv(time, status) ~ rcs(albumin, 4), data=d) 
anova(m2) 
m <- cph(Surv(time, status) ~ albumin, data=d) 

p.val <- 1- pchisq((m2$loglik[2]- m$loglik[2]), 2) 

는 다음을 사용하여 추론의 차이를 볼 수 있습니다 Harrell이 자신의 cph 도움말 페이지에 사용한 예제에서보다 정확한 Wald 통계 (이 경우 p 값이 0.05보다 커서 중요하지 않은 경우)보다 정확합니다. 자신의 예를 사용 :

> anova(f) 
       Wald Statistics   Response: S 

Factor  Chi-Square d.f. P  
age  57.75  3 <.0001 
    Nonlinear 8.17  2 0.0168 
sex  18.75  1 <.0001 
TOTAL  75.63  4 <.0001 

당신은 잘못이 비선형 용어는 기존의 0.05 수준에서 "상당한"이라고 결론을 내릴 것입니다. 이 사실에도 불구하고 모델을 생성하는 코드는 완전히 (로그 - 위험 규모) 시대에 선형으로 건설되었다 :

h <- .02*exp(.04*(age-50)+.8*(sex=='Female')) 

이 감소 모드를 만들고 비교 :

f0 <- cph(S ~ age + sex, x=TRUE, y=TRUE) 
anova(f0) 
#------------- 
       Wald Statistics   Response: S 

Factor  Chi-Square d.f. P  
age  56.64  1 <.0001 
sex  16.26  1 1e-04 

TOTAL  75.85  2 <.0001 

일탈의 차이를 자유 차이의 2 명 정도에 중요하지 않다 :

1-pchisq((f$loglik[2]- f0$loglik[2]),2) 
[1] 0.1243212 

내가 하렐은이 예 잎 왜 자신의 RMS 과정을 촬영했기 때문에, 알고 그가 십자가 모드를 보증 모르겠어요 l 더 정확한 접근 방식으로서의 편차 비교.

관련 문제