Mit dem ranger Paket zu lesen, ich das folgende Skript ausführen:Wie die Indizes von der Vorhersage Ausgabe von predict.ranger, R
rf <- ranger(Surv(time, Y) ~ ., data = train_frame[1:50000, ], write.forest = TRUE, num.trees = 100)
test_frame <- train_frame[50001:100000, ]
preds <- predict(rf, test_frame)
chfs <- preds$chf
plot(chfs[1, ])
Die kumulative Hazard-Funktion Indizes hat 1-36 auf der X-Achse. Offensichtlich entspricht dies der Zeit, aber ich bin nicht sicher, wie: meine Zeit der Beobachtung variiert von einem Minimum von 0 bis zu einem Maximum von 399. Was ist die Zuordnung zwischen den ursprünglichen Daten und der vorhergesagten Ausgabe von predict.ranger
, und wie kann ich Operationalisieren Sie dies, um den Grad des Risikos für ein bestimmtes Thema nach einer bestimmten Zeit zu quantifizieren?
Hier ist ein Beispiel, was meine Zeit/Ereignisdaten wie folgt aussehen:
Y time
<int> <dbl>
1 1 358
2 0 90
3 0 162
4 0 35
5 0 307
6 0 69
7 0 184
8 0 24
9 0 366
10 0 33
Und hier ist es, was die Franken des ersten Themas wie folgt aussehen: Kann mir jemand helfen, die Punkte zu verbinden? Auf dem "matrix"
-Objekt, das preds$chf
ist, sind keine Zeilen- oder Spaltennamen vorhanden.
Wie sieht 'str (preds)' aus? Wenn ich deinen Code mit dem Modell als 'rf <- ranger (Surv (Zeit, Status) ~., Daten = Veteran, write.forest = TRUE, num.trees = 100)', habe meine 'chfs' Zeilen und Spalten . Ich bin überrascht, dass du 'Wichtigkeit =' Unreinheit '' mit dem Überleben verwenden kannst. Ebenfalls, . Wie auch immer, Sie können das reproduzierbar machen? Ich bin überrascht, dass Sie 'Wichtigkeit =' Unreinheit '' mit dem Überleben verwenden können – Jota
Dies war eine alte Codezeile. "Wichtigkeit =" Unreinheit "hat tatsächlich einen Fehler verursacht. Ich bin gerade nicht vor meinem Arbeitsplatz, aber 'str (preds)' ist eine benannte Liste der Klasse 'ranger.predict'. Meine CHFs und Überlebensfunktionen sind auch Matrizen. @ Mnwrights Antwort unten trifft den Nagel auf den Kopf. – Aaron