#Pacotes
require(tidyverse)
require(survival)
Dados:
dados=read.delim("C:/Users/USER/OneDrive/UFMT/SOBREVIVENCIA/dadosmama.txt") %>%
select(1:4)
str(dados)
## 'data.frame': 58 obs. of 4 variables:
## $ Idade : int 1 1 0 0 1 0 1 1 0 1 ...
## $ Raca : int 0 0 1 0 0 0 1 1 0 0 ...
## $ t : int 1 1 1 1 1 1 1 2 2 2 ...
## $ censur: int 1 1 1 1 1 1 1 1 1 1 ...
Teste de Proporcionalidade:
#Raca
fit1<-coxph(Surv(t[Raca==0],censur[Raca==0])~1,
data=dados,x=T,method="breslow")
ss<- survfit(fit1)
s0<-round(ss$surv,digits=5)
H0<- -log(s0)
{plot(ss$time,log(H0),xlab="Tempos",
ylab=expression(log(Lambda[0]*(t))), bty="n",type="s")
fit2<-coxph(Surv(t[Raca==1],censur[Raca==1])~1,
data=dados,x=T,method="breslow")
ss<- survfit(fit2)
s0<-round(ss$surv,digits=5)
H0<- -log(s0)
lines(ss$time,log(H0),type="s",lty=2,lwd=2)
legend(7,-1,lty=c(2,1),c("Raca = 1: Branco","Raca = 0: Não Branco"),
lwd=1,bty="n",cex=0.7)
title("Raça")}

#Idade
fit1<-coxph(Surv(t[Idade==0],censur[Idade==0])~1,
data=dados,x=T,method="breslow")
ss<- survfit(fit1)
s0<-round(ss$surv,digits=5)
H0<- -log(s0)
{plot(ss$time,log(H0),xlab="Tempos",xlim = c(1,10),
ylab=expression(log(Lambda[0]*(t))),
bty="n",type="s")
fit2<-coxph(Surv(t[Idade==1],censur[Idade==1])~1,
data=dados,x=T,method="breslow")
ss<- survfit(fit2)
s0<-round(ss$surv,digits=5)
H0<- -log(s0)
lines(ss$time,log(H0),type="s",lty=2,lwd=2)
legend(6,-1,lty=c(2,1),c("Idade = 1: Mais de 50 Anos",
"Idade = 0: 50 Anos ou menos"),
lwd=1,bty="n",cex=0.7)
title("Idade")}

Ajuste do Modelo de Cox
fit <- coxph(Surv(t,censur)~ Raca + Idade, data = dados,
x = T, method = "breslow")
summary(fit)
## Call:
## coxph(formula = Surv(t, censur) ~ Raca + Idade, data = dados,
## x = T, method = "breslow")
##
## n= 58, number of events= 58
##
## coef exp(coef) se(coef) z Pr(>|z|)
## Raca 0.4455 1.5612 0.2840 1.569 0.11671
## Idade -0.8713 0.4184 0.3255 -2.677 0.00744 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## exp(coef) exp(-coef) lower .95 upper .95
## Raca 1.5612 0.6405 0.8949 2.7238
## Idade 0.4184 2.3899 0.2211 0.7919
##
## Concordance= 0.658 (se = 0.041 )
## Likelihood ratio test= 10.23 on 2 df, p=0.006
## Wald test = 10.95 on 2 df, p=0.004
## Score (logrank) test = 11.63 on 2 df, p=0.003