Wie kann man aus Gebrechlichkeitsmodellen vorhergesagte Überlebenskurven erstellen (mit R coxph)?

12

Ich möchte die vorhergesagte Überlebensfunktion für ein proportionales Cox-Gefährdungsmodell mit fragilen Begriffen berechnen [unter Verwendung des Überlebenspakets]. Es scheint, dass die vorhergesagte Überlebensfunktion nicht berechnet werden kann, wenn sich Gebrechlichkeitsterme im Modell befinden.

## 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

Ich habe versucht, mithilfe von sparse=TRUE, Sparse =FALSE, sparse =0, sparse=5Optionen sowohl spärliche als auch nicht spärliche Berechnungsmethoden zu verwenden . Es hat jedoch keiner funktioniert.

Wie berechne ich die vorhergesagte Überlebenskurve basierend auf meinem Gebrechlichkeitsmodell?

ledzep
quelle

Antworten:

2

Das Problem ist dasselbe, das bei der Vorhersage der Ergebnisse aus einem linearen Modell mit gemischten Effekten auftreten würde. Da die Überlebenskurve nicht kollabierbar ist, hat jeder Wurf in Ihrem Beispiel eine wurfspezifische Überlebenskurve entsprechend dem Modell, das Sie anpassen. Eine Schwachstelle, wie Sie vielleicht wissen, ist dasselbe wie ein zufälliger Abschnitt, der die gemeinsamen Niveaus von verwirrenden und prognostischen Variablen anzeigt, die für jeden Wurf endemisch sind, vermutlich in Bezug auf genetische Merkmale. Daher ist der lineare Prädiktor für die Gefahrenquote eine Mischung aus den beobachteten festen Effekten und zufälligen Einstreueffekten. Im Gegensatz zu gemischten Modellen passt das Cox-Modell den Gebrechlichkeitsausdruck zur bestraften Regression, das angepasste Objekt ist von Klasse coxph-penalund es gibt keine Methode dafür. survreg.coxph-penalDaher schlagen die Versuche, den linearen Prädiktor zu erstellen, fehl. Es gibt einige Problemumgehungen.

  1. Passen Sie das Randmodell einfach mit zentrierten Kovariaten an.

  2. Zentrieren Sie die Kovariaten, passen Sie 1 an, passen Sie dann das Zufallseffektmodell an coxmeund extrahieren Sie die Zufallseffekte. Fügen Sie sie mit einem Versatz zum linearen Prädiktor hinzu, um die schichtenspezifische Überlebenskurve für jeden Wurf zu berechnen.

  3. Führen Sie 2 durch und marginalisieren Sie sie, indem Sie alle Überlebenskurven zusammen mitteln. Dies ist ein separater Ansatz zur Anpassung des Marginalmodells.

  4. Verwenden Sie feste Effekte oder Schichten in einem marginalen Cox-Modell, um unterschiedliche Überlebenskurven für jeden Wurf vorherzusagen.

AdamO
quelle