#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