Come generare curve di sopravvivenza previste da modelli di fragilità (usando R coxph)?


13

Voglio calcolare la funzione di sopravvivenza prevista per un modello di rischi proporzionali di Cox con termini di fragilità [usando il pacchetto di sopravvivenza]. Sembra che quando i termini di fragilità sono nel modello, la funzione di sopravvissuto prevista non può essere calcolata.

## Example 
require(survival)
data(rats)

## Create fake weight
set.seed(90989)
rats$weight<-runif(nrow(rats),0.2,0.9)

## Cox model with gamma frailty on litter
fit <- coxph(Surv(time, status) ~ rx+weight+frailty(litter,dist="gamma"),
data = rats) 

## Compute survival curve from the cox model for rx=0 and weight=0.5 kg
plot(survfit(fit, newdata=data.frame(rx=0,weight=0.5)),xlab = "time",
ylab="Survival") 

## Running this line, I get following error message:
Error in survfit.coxph(fit, newdata = data.frame(rx = 0, weight = 0.5)) : 
Newdata cannot be used when a model has sparse frailty terms

Ho provato a utilizzare metodi di calcolo sia sparsi che non sparsi utilizzando le sparse=TRUE, Sparse =FALSE, sparse =0, sparse=5opzioni. Tuttavia, nessuno ha funzionato.

Come calcolo la curva di sopravvivenza prevista in base al mio modello di fragilità?

Risposte:


3

Il problema qui è lo stesso che si otterrebbe cercando di prevedere i risultati da un modello lineare di effetti misti. Poiché la curva di sopravvivenza non è pieghevole, ogni cucciolata nel tuo esempio ha una curva di sopravvivenza specifica della cucciolata in base al modello che si adatta. Una fragilità come forse sapete è la stessa di un'intercettazione casuale che indica livelli comuni di confondimento e variabili prognostiche endemiche per ogni figliata, presumibilmente nei confronti di tratti genetici. Pertanto, il predittore lineare per il hazard ratio è un mix di effetti fissi osservati ed effetti di lettiera casuali. A differenza dei modelli misti, il modello Cox si adatta al termine fragile con regressione penalizzata, l'oggetto montato è di classe coxph-penale non esiste un metodo per survreg.coxph-penal, quindi i tentativi di creare il predittore lineare falliscono. Ci sono un paio di soluzioni alternative.

  1. Basta adattare il modello marginale con covariate centrate.

  2. Centra le covariate, misura 1, quindi adatta il modello di effetti casuali usando coxmeed estrae gli effetti casuali, aggiungili al predittore lineare con un offset per calcolare la curva di sopravvivenza specifica dello strato per ogni cucciolata.

  3. Esegui 2 e li marginalizzi facendo la media di tutte le curve di sopravvivenza insieme, un approccio separato per adattarsi al modello marginale.

  4. Usa effetti fissi o strati in un modello marginale di Cox per prevedere diverse curve di sopravvivenza per ogni cucciolata.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.