Como fazer o gráfico de calibração para dados de sobrevivência sem binning data?


7

Para fazer um gráfico de calibração para as probabilidades de sobrevivência estimadas a partir de um modelo de Cox, pode-se dividir o risco estimado em grupos, calcular o risco médio dentro de um grupo e depois compará-lo com a estimativa de Kaplan-Meier. Quais são as abordagens alternativas que não exigem binning? Quais são as etapas específicas necessárias para implementar essa técnica e qual é a lógica por trás dela? Alguma discussão está presente nesta questão .

Respostas:


7

Uma maneira simples de calibrar os modelos de sobrevivência Cox é usar a calibratefunção fornecida pelo rmspacote em R, como na página que você vinculou . Este pacote fornece um cphmétodo para os modelos Cox, projetado para funcionar com os métodos de calibração e validação que fornece para vários tipos de modelos de regressão.

Citando a partir da página do manual: "[ calibratevocê] inicia o bootstrapping ou a validação cruzada para obter estimativas corrigidas de viés (overfitting-corrigido) dos valores previstos versus observados". Em vez de usar estimativas binárias de Kaplan-Meier para fornecer valores "observados", no entanto, a cmethod="hare"configuração padrão calibratepara cphmodelos usa estimativas de interpolação de regressão-spline que permitem riscos não proporcionais e não linearidade, considerando a censura. Essa modelagem adaptativa dos dados observados permite um gráfico de calibração contínua para um tempo de sobrevivência específico. Este esboço fornece mais detalhes sobre o método HARE, com uma referência ao artigo original. (Se você definir cmethod="KM"a chamada para calibrateobter uma comparação com as estimativas da Kaplan-Meier).

Antes de fazer isso, leia as páginas de manual para garantir que você gere o cphmodelo com as configurações corretas que permitem o uso dessas funções e que o polsplinepacote esteja instalado para fornecer a harefuncionalidade.

Frank Harrell, o autor do rmspacote, compara a abordagem binacional de Kaplan-Meier e HARE contínua nas páginas 506-9 de Regression Modeling Stratgies , segunda edição, e (mais enigmaticamente) em suas notas de curso associadas , capítulo 17, páginas 18-19 .

O que está acontecendo "sob o capô"

O problema de calibração para a análise de sobrevivência é que as observações são eventos enquanto tentamos calibrar as probabilidades dos eventos. Portanto, é necessário algum tipo de interpolação. Para os modelos de Cox, um tempo de sobrevivência específico é levado para análise.

Considere a calibração do KM em bin. Você começa agrupando os casos por probabilidades previstas e, em seguida, para cada grupo de probabilidades previstas semelhantes, plota a curva de sobrevivência de KM e interpola entre esses poucos casos no tempo de sobrevivência escolhido para obter a probabilidade de sobrevivência "observada" estimada para esse grupo.

Na abordagem usada por calibratepara cphmodelos, você ao invés primeira interpolar o risco entre todos os casos como uma função geral das variáveis de previsão e de tempo. Essa função geral, conforme fornecida porhare, permite que cada variável preditora e tempo sejam modelados como splines lineares e permite interações em pares entre as variáveis ​​(incluindo o tempo como variável). A coleção de splines e interações fornece um conjunto de funções básicas, cada uma das quais é uma função das variáveis ​​preditoras e do tempo. Em seguida, você procura a combinação dessas funções básicas que melhor se ajustam aos dados de sobrevivência, com os coeficientes ponderando as funções básicas estimadas maximizando a probabilidade parcial, da mesma forma que um modelo de Cox encontra coeficientes para as próprias variáveis ​​preditoras. A complexidade do modelo (por exemplo, qual base funciona para incluir o número de nós de spline) é selecionada por um processo de adição e exclusão passo a passo que é bem explicado no esquema mencionado acima.

O resultado do hareprocesso é uma única função que fornece o risco em função de todas as variáveis ​​preditoras e tempo, de uma forma que normalmente será muito mais complicada do que o modelo de Cox de riscos proporcionais. Eu gosto de pensar nisso como começar com uma interpolação entre todos os casos em todos os momentos, juntamente com seus valores associados de variáveis ​​preditoras, em vez da interpolação em um determinado momento para um subconjunto de casos usados ​​no esquema de calibração de KM binado.

Com a função de risco fornecida por hare, agora você pode usar qualquer combinação de valores de variáveis ​​preditivas e comparar a probabilidade de sobrevivência "prevista" de Cox em um determinado momento com a estimativa interpolada da probabilidade de sobrevivência "observada" fornecida por hare. (Observe que, em princípio, você não está limitado aos casos em questão para esta comparação; qualquer combinação razoável de valores de variáveis ​​preditivas pode ser examinada.) A curva de calibração é então um gráfico suavizado da probabilidade de sobrevivência "observada" versus "prevista" , no horário desejado, entre todos os casos. O calibratemétodo rmsrepete esse processo para várias amostras de inicialização dos casos para avaliar quão bem os resultados serão generalizados para a população da qual os casos foram extraídos.

Se você deseja não apenas olhar sob o capô, mas também desconstruir o mecanismo, isso é fácil no R. Quando o rmspacote é carregado, digite rms:::calibrate.cphno prompt de comando para obter o código desse calibratemétodo. O wrapper para hareestá disponível, digitando hareno prompt quando o polsplinepacote é carregado; grande parte do trabalho é realizada por funções compiladas cujo código fonte está disponível no CRAN .


Obrigado. Se possível, você poderia elaborar a lógica do uso do método 'hare'. Vejo os benefícios listados, mas não entendo o que está acontecendo "sob o capô".
Julieth 08/04/19

@ Julieth, tentei abrir o capô para você, além da minha resposta.
EdM
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.