Não consegui acessar o artigo de Simon e Makuch mencionado acima, mas depois de pesquisar o tópico, encontrei:
Steven M Snapinn, Qi Jiang e Boris Iglewicz (2005) ilustrando o impacto de uma covariável variável no tempo com um estimador estendido de Kaplan-Meier , The American Statistician , 59: 4, 301-307.
Esse artigo propõe um gráfico de Kaplan-Meier (KM) dependente do tempo, simplesmente atualizando as coortes em todos os momentos do evento. Também cita o artigo de Simon e Makuch por propor uma idéia semelhante. O KM regular não permite isso, apenas permite uma divisão fixa em grupos. O método proposto, na verdade, divide o tempo de sobrevivência de acordo com o status covariado - exatamente como se poderia fazer ao estimar um modelo de Cox com covariáveis constantes por partes. Para o modelo de Cox, essa é uma ideia viável e padrão. No entanto, é mais complicado ao fazer um gráfico de KM. Deixe-me ilustrá-lo com um exemplo de simulação.
Vamos supor que não temos censura, mas algum evento (por exemplo, parto) que pode ou não ocorrer antes da hora da morte. Vamos também assumir riscos constantes por uma questão de simplicidade. Também assumiremos que o parto não altera o risco de morrer. Agora, seguiremos o procedimento prescrito no artigo acima. O artigo afirma claramente como isso é feito em R, simplesmente divida seus sujeitos no momento do parto, de modo que sejam constantes em sua variável de agrupamento. Em seguida, use a formulação do processo de contagem na Surv
função. Em código
library(survival)
library(ggplot2)
n <- 10000
data <- data.frame(id = seq(n),
preg = rexp(n, 1),
death = rexp(n, .5),
enter = 0,
per = NA,
event = 1)
data$exit <- data$death
data0 <- data
data0$exit <- with(data, pmin(preg, death))
data0$per <- 0
data0$event[with(data0, preg < death)] <- 0
data1 <- subset(data, preg < death)
data1$enter <- data1$preg
data1$per <- 1
data <- rbind(data0, data1)
data <- data[order(data$id), ]
Sfit <- survfit(Surv(time = enter, time2 = exit, event = event) ~ per, data = data)
autoplot(Sfit, censSize = 0)$plot
Estou mais ou menos dividindo "à mão". Nós poderíamos usar survSplit
também. O procedimento realmente me fornece uma estimativa muito boa.
Temos estimativas quase idênticas para os dois grupos como deveríamos. Mas, na verdade, minha simulação foi talvez um pouco irrealista. Digamos que uma mulher não possa dar à luz nas duas primeiras unidades de tempo por algum motivo. Isso é pelo menos razoável no seu exemplo: haverá algum tempo entre duas gestações correspondentes à mesma mulher. Fazendo uma pequena adição ao código
data <- data.frame(id = seq(n),
preg = rexp(n, 1) + 2,
death = rexp(n, .5),
enter = 0,
preg = NA,
event = 1)
obtemos o seguinte gráfico:
O mesmo estaria acontecendo com seus dados. Você não verá nenhuma terceira gravidez por pelo menos um período inicial de tempo, o que significa que sua estimativa será de 1 para esse grupo e esse período de tempo. Na minha opinião, isso é uma deturpação de seus dados. Considere minha simulação. Os riscos são idênticos, mas para todo momento a per1
estimativa é maior que a per0
estimativa.
Você pode considerar soluções diferentes para esse problema. Você propõe colá-los juntos em algum momento (deixe a per1
curva começar a partir de um certo ponto na per0
curva). Eu gosto desta ideia. Se eu fizer isso nos dados da simulação, obtemos:
No nosso caso específico, acho que isso representa melhor os dados, mas não conheço nenhum resultado publicado que suporte essa abordagem. Heuristicamente, pode-se usar o argumento que apresentei em outra resposta:
Gráfico de KM com coeficiente variável no tempo
Há um post recente sobre esse assunto em geral no CV: Qual é o melhor gráfico para descrever uma análise de sobrevivência com uma covariável dependente do tempo?
Além disso, agora existe a possibilidade de calcular o teste Mantel-Byar e acompanhar a plotagem de Simon-Makuch em R, usando
Rcmdr
osRcmdrPlugin.EZR
pacotes e.Consulte a postagem do SO relacionada que contém um código R detalhado: /programming/40431559/mantel-byar-test-and-simon-makuch-plot-for-survival-analysis-with-time-dependent
fonte