Previsão na regressão de Cox


38

Estou fazendo uma regressão multivariada de Cox, tenho minhas variáveis ​​independentes significativas e valores beta. O modelo se ajusta muito bem aos meus dados.

Agora, eu gostaria de usar meu modelo e prever a sobrevivência de uma nova observação. Não estou claro como fazer isso com um modelo de Cox. Em uma regressão linear ou logística, seria fácil, basta colocar os valores de nova observação na regressão e multiplicá-los por betas e, portanto, tenho a previsão do meu resultado.

Como posso determinar meu risco de linha de base? Eu preciso disso, além de calcular a previsão.

Como isso é feito em um modelo de Cox?

Respostas:


30

Seguindo o modelo de Cox, o risco estimado para o indivíduo com vector covariável x i tem a forma de h i ( t ) = h 0 ( t ) exp ( x ' i β ) , onde β é encontrado através da maximização da probabilidade parcial , enquanto h 0 segue a partir do estimador Nelson-Aalen, h 0 ( t i ) = d iEuxEu

h^Eu(t)=h^0 0(t)exp(xEuβ^),
β^h^0 0 comt1,t2,...os tempos e eventos distintosde dio número de mortes noti (ver, por exemplo,Secção 3.6).
h^0 0(tEu)=dEuj:tjtEuexp(xjβ^)
t1t2,...dEutEu

S^Eu(t)=S^0 0(t)exp(xEuβ^)
S^0 0(t)=exp(-Λ^0 0(t))
Λ^0 0(t)=j:tjth^0 0(tj).

EDIT: Isso também pode ser do seu interesse :-)


1
Essa é exatamente a minha pergunta ... Preciso de uma estimativa da função de risco de linha de base para poder ter a previsão, correto? Você conhece algum método para estimar isso?
Marja

2
@Marjan, o canivete pode não refletir adequadamente a incerteza causada pela seleção de variáveis. O bootstrap mostra corretamente mais variabilidade, na qual as variáveis ​​são rotuladas como "significativas". Se você deseja fazer uma "validação relativa", pode mostrar que a discriminação preditiva é boa depois de corrigir o ajuste excessivo. Isso não requer lidar com o risco da linha de base, mas está validando as estimativas de risco relativo do log. A validatefunção no rmspacote R em conjunto com a cphfunção fará isso. O único algoritmo stepwise implementado validateé o retrocesso reverso.
31712 Frank

1
Obter riscos relativos previstos (isto é, o preditor linear) é bastante simples. Mas eu sair usando SAS em 1991.
Frank Harrell

8
O link ficou inoperante :-(.
gung - Reinstate Monica

2
Existe uma maneira de prever o tempo de sobrevivência T para um indivíduo específico? Quero dizer que, dada uma lista de valores para as covariáveis, qual é a maneira de descobrir o tempo após o qual o indivíduo provavelmente morrerá?
statBeginner

14

A função predictSurvProbno pecpacote pode fornecer estimativas de risco absolutas para novos dados com base em um modelo cox existente, se você usar R.

Os detalhes matemáticos que não posso explicar.

EDIT: A função fornece probabilidades de sobrevivência, que até agora consideramos 1- (Probabilidade de evento).

EDIT 2:

Pode-se fazer sem o pacote pec. Usando apenas o pacote de sobrevivência, a função a seguir retorna risco absoluto com base no modelo de Cox

risk = function(model, newdata, time) {
  as.numeric(1-summary(survfit(model, newdata = newdata, se.fit = F, conf.int = F), times = time)$surv)
}

A probabilidade de 1-sobrevivência é o risco cumulativo. Acho que o OP solicita a função de risco instantâneo (da linha de base) ou algum tipo de estimativa suavizada ( muhazpacotes em R).
ECII 9/03/13

1
A probabilidade de 1-sobrevivência não é um risco cumulativo. Na ausência de riscos concorrentes, os dois estão conectados conforme detalhado em en.wikipedia.org/wiki/… .
miura

1-Probabilidade de sobrevivência = taxa de falha (assumindo apenas 1x método de falha). A relação entre a probabilidade de sobrevivência e o risco cumulativo é descrita na resposta aceita: S(t)=exp(−Λ(t))onde Λ(t)está o risco cumulativo.
NickBraunagel 18/09

11

Talvez você também gostaria de tentar algo assim? Ajuste um modelo de riscos proporcionais de Cox e use-o para obter a curva de sobrevivência prevista para uma nova instância.

Retirado do arquivo de ajuda do survfit.coxph em R (acabei de adicionar a parte das linhas)

# fit a Cox proportional hazards model and plot the  
# predicted survival for a 60 year old 
fit <- coxph(Surv(futime, fustat) ~ age, data=ovarian) 
plot(survfit(fit, newdata=data.frame(age=60)),
     xscale=365.25, xlab="Years", ylab="Survival", conf.int=F) 
# also plot the predicted survival for a 70 year old
lines(survfit(fit, newdata=data.frame(age=70)),
     xscale=365.25, xlab="Years", ylab="Survival") 

Você deve ter em mente que, para que a suposição de riscos proporcionais ainda seja válida para sua previsão, o paciente para o qual você prediz deve pertencer a um grupo qualitativamente igual ao usado para derivar o modelo de riscos proporcionais de Cox que você usou para a previsão. predição.


6

A basehazfunção dos survivalpacotes fornece o risco da linha de base nos pontos de tempo do evento. A partir disso, você pode trabalhar a matemática que o ocram fornece e incluir os ORs de suas estimativas de coxph.


2

O ponto principal do modelo de Cox é a suposição do risco proporcional e o uso do likelhood parcial. A probabilidade parcial tem a função de risco de base eliminada. Portanto, você não precisa especificar um. Essa é a beleza disso!


2
Se, no entanto, você deseja obter uma estimativa do risco ou da sobrevivência para um valor específico do vetor covariável, precisará de uma estimativa do risco ou da sobrevivência da linha de base. A estimativa Nelson-Aalen geralmente faz o trabalho ...
Ocram

1
Geralmente, com o modelo Cox, você está comparando duas funções de sobrevivência, e a chave é a taxa de risco e não a função de risco. O risco da linha de base é como um parâmetro incômodo que Cox eliminou de maneira tão inteligente do problema usando a suposição de riscos proporcionais. Qualquer método que você gostaria de usar para estimar a função de risco e / ou o risco de linha de base no contexto do modelo exigiria o uso da forma Cox do modelo que força a proporcionalidade.
Michael R. Chernick 10/09/12

Muito obrigado, seria ótimo se você ver o meu comentário sobre a resposta do ocram. Talvez você possa me ajudar também?
Marja

3
Você também pode estratificar fatores que não apresentam riscos proporcionais. Mas, de qualquer forma, o modelo Cox e seu estimador pós-ajuste do risco de linha de base podem ser usados ​​para obter quantis previstos de tempo de sobrevivência, várias probabilidades de sobrevivência e tempo médio de sobrevivência previsto, se você tiver acompanhamento a longo prazo. Todas estas quantidades são fáceis de obter no pacote de R rms.
Frank Harrell

Você não precisa especificá-lo, mas é estimado.
Dwin
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.