Ich hatte ein ähnliches Problem und löste es wie folgt aus:
Wie es in der survival
help file Sie time
und time2
angeben müssen angegeben ist.
Sie von denken kann links von -infinity
wie gehen Daten zensiert, bis die time
Sie gemessen und von rechtszensierte von bis +infinity
vom time
Sie gemessen (wahrscheinlich letzten Follow-up) gehen. Infinity ist am besten mit NA
codiert.
Was mein Problem gelöst hat, war zwei Vektoren zu erstellen: ein Startvektor time
und ein Stoppvektor time2
.
Für time
möchten Sie alle diese Werte, die links zensiert zu sind. Rechts zensiert Beobachtungen sind mit der Zeit der Messung ausgefüllt, ebenso wie die Ereignisse. Für die time2
ist es umgekehrt.
Ich bekomme jedoch nicht wirklich Ihre Daten. Warum würdest du Themen weiterverfolgen, wenn sie bereits die Veranstaltung hatten? Dies ist, was Sie für Thema 4 und 5 tun, indem Sie sagen, AF-Zeit war 8 und 3, aber Followup_time war 15 und 7.
versucht zu helfen, nehme ich an folgenden:
Sie haben 5 Patienten mit
AF_at_baseline<-c(1,0,1,0,0) #where 1 indicates left censoring
Follow-up-Zeiten sind Ereigniszeiten (oder zuletzt von Follow-up für links und rechts zensiert)
also die links zensiert Daten Ihr Followup_time würde wie folgt aussehen:
Followup_time <- c(NA, 3, NA, 15, 7)
Für die zensiert rechts Daten:
Followup_time2 <- c(11, NA, 8 ,15, 7)
#Since you indicated that only subject 2 didn't experience the event
Jetzt können Sie rufen Surv
Surv.Obj <- Surv(Followup_time, Followup_time2, type = 'interval2')
Surv.Obj
[1] 11- 3+ 8- 15 7 # with '-' indicating left censoring and '+' right censoring
Dann Sie survfit
anrufen und zeichnen Sie die Kaplan-Meier-Kurve:
km <- survfit(Surv.Obj ~ 1, conf.type = "none")
km
Call: survfit(formula = Surv.Obj ~ 1, conf.type = "none")
n events median 0.95LCL 0.95UCL
5 4 7 7 NA
enter code here
summary(km)
Call: survfit(formula = Surv.Obj ~ 1, conf.type = "none")
time n.risk n.event survival std.err lower 95% CI upper 95% CI
7.0 4 3.00e+00 0.25 0.217 0.0458 1
7.5 1 4.44e-16 0.25 0.217 0.0458 1
15.0 1 1.00e+00 0.00 NaN NA NA
plot(km, conf.int = FALSE, mark.time = TRUE)
Bis jetzt habe ich nicht herausgefunden, wie man Cox PH mit Intervalldaten macht. Siehe meine Frage here.
Linkszensierung ist angebracht, wenn Sie eine Beobachtungsstartzeit haben und Sie nicht die genaue Ereigniszeit kennen, aber Sie haben eine obere Grenze. [Siehe z.B. das Beispiel in dieser Antwort] (http://stats.stackexchange.com/a/144098/7515). Für diese Daten wäre eine Linkszensierung nur dann sinnvoll, wenn Ihre Nullzeit (Beobachtungsbeginn) Geburt war. Sie scheinen Rekrutierung als Beobachtungsstart zu verwenden, so dass Linkszensur nicht wirklich zutrifft. – Gregor
Dies scheint nicht zum Thema der SO zu gehören. Ich würde empfehlen, bei stats.stackexchange weitere Fragen zu stellen, wenn Sie mehr methodische/statistische Anleitungen benötigen. – Gregor
Im Allgemeinen würden Sie die Fälle in AF einfach weglassen, wenn Sie versuchten, die Zeit bis zum Einsetzen von Personen vorherzusagen, die derzeit von der Bedingung frei sind. –