Zensierte Zeiten · Verständlich erklärt

Kaplan–Meier verständlich erklärt

Am Stichtag der Beobachtung stehen noch Container im Block. Von ihnen weiß man nur: Sie sind mindestens so lange geblieben. Die Seite zeigt, warum zwei naheliegende Rechnungen die Verweilzeit dann zu kurz schätzen und wie man jeden Container nur so lange zählt, wie man ihn gesehen hat.

Zuletzt aktualisiert:

Teil 1 · Für Einsteiger

Ein Wort unbekannt? Das Begriffsverzeichnis erklärt es in wenigen Sätzen.

Der Stichtag im Containerblock

Stellen Sie sich einen Containerblock am Hafen vor. Ein Container kommt an, steht dort und wird irgendwann abgeholt; die Zeit dazwischen ist seine Verweilzeit. Sie wollen wissen, wie lange ein Container typischerweise bleibt, und beobachten den Block bis zu einem festen Tag, dem Stichtag.

Manche Container sind bis dahin abgeholt, ihre Verweilzeit kennen Sie. Andere stehen am Stichtag noch da. Kurz geblieben sind sie nicht: Sie wissen nur, dass sie mindestens so lange da waren, wie Sie sie gesehen haben. Fachleute nennen solche Zeiten zensiert: Die Beobachtung endet, bevor die Geschichte des Containers zu Ende ist.

Einige Zahlen dieser Seite stammen aus einer Demo, einem Programm zum Ausprobieren im Browser. Ihre Container sind erfunden, die Wahrheit ist bekannt: im Mittel 6 Tage Verweilzeit, Median 4 Tage (der Tag, bis zu dem die Hälfte abgeholt ist).

Sechs Container als Beispiel

Nehmen wir sechs Container. Vier werden während der Beobachtung abgeholt, nach 2, 4, 5 und 8 Tagen. Zwei stehen am Stichtag noch da; sie wurden nur 3 und 5 Tage lang beobachtet (etwa, weil sie spät ankamen). Aufgeschrieben: 2, 3+, 4, 5, 5+, 8. Das Pluszeichen heißt: noch da, mindestens so viele Tage. Zwei naheliegende Wege, die typische Verweilzeit zu schätzen, führen in die Irre.

Erster Irrweg: alle Zeiten mitteln

Man zählt alle sechs Zahlen zusammen und teilt durch sechs. Dann wird der Container mit 3+ so behandelt, als wäre er nach 3 Tagen abgeholt worden, der mit 5+ nach 5 Tagen. Beide bleiben aber mindestens so lange, wahrscheinlich länger. Das Ergebnis fällt zu niedrig aus.

In der Demo (Einstellung Beobachtungsfenster) endet die Beobachtung für alle am selben Tag, wer spät ankommt, wird nur kurz gesehen. Bei 30 Tagen Beobachtung und 300 Containern liegt das Mittel aller Zeiten gut ein Fünftel unter den wahren 6 Tagen. Mehr Container reparieren das nicht, denn der Fehler steckt in der Rechnung.

Zweiter Irrweg: nur die Abgeholten zählen

Der zweite Weg lässt die noch stehenden Container weg. Ein Bild dazu: Sie wollen wissen, wie lange Gäste auf einer Feier bleiben, und fragen am Ende nur die, die schon gegangen sind. Wer noch tanzt, fehlt, übrig bleiben die Frühgeher. Im Block fehlen so vor allem die Container, die lange stehen.

In der Demo liegt auch dieses Mittel bei 30 Tagen Beobachtung und 300 Containern rund ein Viertel zu niedrig. Bei nur 8 Tagen Beobachtung fällt es auf unter 3 Tage, so wie das Mittel des ersten Wegs, statt der wahren 6.

Jeder Container zählt, solange man ihn sieht

Der Ausweg: Jeder Container zählt genau so lange, wie man ihn beobachtet hat. Endet seine Beobachtung, fehlt er ab dann nur in der Zahl der Beobachteten. Gerechnet wird mit Anteilen: Wie viele von denen, die noch beobachtet werden, überstehen den Tag?

Am Tag 2 werden alle sechs beobachtet, einer wird abgeholt: 5/6 überstehen den Tag. Am Tag 3 endet die Beobachtung eines Containers; er zählt nicht mehr mit, als abgeholt gilt er nicht. Am Tag 4 werden vier beobachtet, einer wird abgeholt: 3/4 überstehen. Bis Tag 4 sind also 5/6 mal 3/4 noch da, das ergibt 5/8. Am Tag 5 werden drei beobachtet (der Container mit 5+ noch mit), einer wird abgeholt: 2/3 überstehen, zusammen bleiben 5/12. Am Tag 8 steht nur noch einer, er wird abgeholt, und es bleibt nichts übrig.

So entsteht eine Kurve: der Anteil der Container, die nach einer bestimmten Zeit noch im Block stehen. Fachleute nennen sie Überlebenskurve und das Verfahren Kaplan–Meier. Der Median ist der erste Tag, an dem die Kurve auf die Hälfte oder darunter sinkt. Hier ist es Tag 5: 5/12 liegt unter der Hälfte, 5/8 am Tag davor noch darüber.

Die Kurve liefert den Median, kein Mittel. In der Demo liegt er bei 30 Tagen Beobachtung und 300 Containern im Mittel vieler Wiederholungen beim wahren Wert von 4 Tagen, auch bei nur 8 Tagen Beobachtung. Die Mediane der beiden Irrwege liegen dort zu tief.

Wo auch dieses Verfahren aufgibt

Endet die Beobachtung so früh, dass die Kurve nie auf die Hälfte sinkt, gibt es keinen Median. In der Demo kommt das bei 4 Tagen Beobachtung vor, so lang wie der wahre Median. Bei vielen Wiederholungen mit neuen erfundenen Containern fehlt er in gut der Hälfte der Durchläufe, auch mit mehr Containern. Eine längere Beobachtung hilft.

Dazu kommt eine Voraussetzung: Das Ende der Beobachtung darf nichts darüber verraten, wie bald der Container abgeholt worden wäre. In der Demo gilt das, weil die Daten so gebaut sind; in echten Daten prüft das Verfahren es nicht. Schiede ein Container kurz vor seiner Abholung aus der Beobachtung aus, läge die Kurve zu hoch. Das folgt aus der Rechnung; wie stark, misst die Demo nicht.

Woran Sie das im Alltag erkennen

  • Ein Bericht nennt die mittlere Standzeit, rechnet aber nur mit abgeholten Containern? Fragen Sie, wie viele am Stichtag noch stehen: Bei vielen kann die Zahl zu niedrig liegen, wie die erfundenen Daten der Demo zeigen.
  • Die berichtete Standzeit wird länger, sobald Sie länger beobachten, obwohl sich im Block nichts geändert hat? Das kann daran liegen, dass die Beobachtung zu kurz war.

Was Sie tun können

Lassen Sie noch stehende Container nicht weg und zählen Sie sie nicht als abgeholt. Zählen Sie jeden nur so lange mit, wie Sie ihn beobachtet haben, und lassen Sie die Auswertung so rechnen, etwa mit Kaplan–Meier.

Selbst ausprobieren

Der Knopf „Weiter zum Fachteil“ führt zum zweiten, mathematischen Teil dieser Seite.

Hinweis: Alle Demos rechnen mit synthetischen oder frei verfügbaren Beispieldaten und laufen auf einem externen Anbieter (Datenschutz). Bitte geben Sie darin keine vertraulichen oder personenbezogenen Daten ein. Die Ergebnisse gelten für die jeweilige Demo-Instanz und lassen sich nicht ungeprüft auf reale Fälle übertragen; für darauf gestützte Entscheidungen übernehme ich keine Gewähr.

Teil 2 · Für Fachleute

Modell und Annahmen

Dieser Teil ist eigenständig lesbar. Er fasst die formale Beschreibung der Demo zusammen; die vollständige Fassung steht im Expander „📐 Mathematische Formulierung“ der Demo. Alle Daten sind erfunden und die Wahrheit ist bekannt, so lässt sich jeder Weg gegen sie messen.

  • Daten: Für jeden von \(n\) Containern gibt es eine Beobachtungszeit \(T_i = \min(D_i, C_i)\) aus Verweilzeit \(D_i\) und Zensierungszeit \(C_i\) sowie ein Kennzeichen \(\delta_i\): \(\delta_i = 1\) genau dann, wenn \(D_i \le C_i\) (Abholung gesehen), sonst 0 (beim Ende noch da, rechtszensiert).
  • Welt: \(D\) ist lognormal mit Median 4 Tagen und \(\sigma = 0{,}9\) (wahres Mittel 5,997, wahres 0,9-Quantil 12,68). Das ist die Containerverweilzeit der Demo verweilzeit-demo, dort ohne Zensierung. Alle Zufallszahlen der Stichproben kommen aus SplitMix64 (nur die Wahl eines neuen Zufalls-Seeds per Knopf nutzt Pythons random); Zufalls-Seed und Einstellungen bestimmen die Stichprobe vollständig.
  • Zwei Arten der Zensierung \(C\): Beobachtungsfenster der Länge \(W\) (Ankunft gleichverteilt in den ersten \(W\) Tagen, die Beobachtung endet für alle am Tag \(W\), also \(C = W - \text{Ankunft}\)) und feste Frist (Typ I: jeder Container wird \(W\) Tage beobachtet, \(C = W\)).
  • Annahme, die in jeder Stufe der Demo gilt: Die Zensierung ist unabhängig vom Ereignis. Ob ein Container beim Ende noch da ist, hängt hier nur davon ab, wann er ankam (Fenster) bzw. von der festen Frist, nicht davon, wie bald er abgeholt worden wäre. Das gilt, weil die Daten so gebaut sind; in echten Daten ist es eine Annahme, die Kaplan–Meier nicht prüft. Die Verweilzeiten sind stetig, Gleichstände zwischen Abholungen treten praktisch nicht auf.
  • Drei Wege: Zensierte als Ereignis (jede beobachtete Zeit zählt als Abholung zu diesem Zeitpunkt), nur Ereignisse (Zensierte fehlen) und Kaplan–Meier (Zensierte bleiben bis zu ihrem Beobachtungsende im Risiko). „Zensierte als Ereignis“ und das Mittel aller beobachteten Zeiten sind derselbe Weg: Die Kurve ist 1 − empirische Verteilungsfunktion, ihr Mittel ist das Mittel aller Zeiten, ihr Median der untere Median aller Zeiten (kleinste Zeit mit \(\hat S \le 0{,}5\); bei geradem \(n\) etwas tiefer als der übliche Median, bei n = 300 um höchstens rund 0,015 Tage nach einer Prüfrechnung, mit den Zeiten der Messung bei Fenster 30 Tage um 0,013).
  • Gleichstand: Bei gleicher Zeit zählt das Ereignis vor der Zensierung, der Zensierte bleibt im Risiko. Das fließt in \(n_j = \#\{i : T_i \ge t_j\}\) ein.
  • Median: kleinste Ereigniszeit mit \(\hat S \le 0{,}5\); erreicht die Kurve 0,5 nicht, meldet die App „kein Median“ statt einer Zahl.
  • Greenwood-Band: punktweise, nominal 95 %, in zwei Fassungen: einfach (\(\hat S \pm z \cdot\) Standardfehler, auf [0, 1] gekappt) und log-log.
  • Mittlere Lebenszeit bis \(\tau\): Fläche unter der Treppe; liegt \(\tau\) über der größten Beobachtungszeit, meldet die App „nicht schätzbar“. Sie ist ein anderes Maß als das Mittel der Verweilzeit.

Die Formeln

Es gibt \(m\) verschiedene Zeiten \(t_1 < \dots < t_m\) mit mindestens einem Ereignis; bei \(t_j\) sind \(d_j\) Container abgeholt worden und \(n_j\) im Risiko. Der Schätzer (Produkt-Grenzwert) ist das Produkt der Anteile, die jede Ereigniszeit überstehen:

\[\hat S(t) = \prod_{t_j \le t} \left(1 - \frac{d_j}{n_j}\right)\]

Der Median ist die kleinste Ereigniszeit, bei der die Kurve höchstens 0,5 erreicht; gibt es keine, ist er nicht schätzbar:

\[\hat t_{0{,}5} = \min\{\, t_j : \hat S(t_j) \le 0{,}5 \,\}\]

Die Greenwood-Varianz schätzt die Streuung der Kurve aus \(n_j\) und \(d_j\). Terme mit \(n_j = d_j\) entfallen, dort ist \(\hat S = 0\):

\[\widehat{\mathrm{Var}}\,\hat S(t) = \hat S(t)^2 \sum_{t_j \le t} \frac{d_j}{n_j\,(n_j - d_j)}\]

Daraus entsteht das einfache Band, mit dem Normalquantil \(z = 1{,}96\) für das nominale Niveau 95 %, auf \([0, 1]\) gekappt:

\[\hat S(t) \pm z \, \hat S(t) \sqrt{\textstyle\sum_{t_j \le t} \frac{d_j}{n_j (n_j - d_j)}}\]

Das log-log-Band bleibt in \([0, 1]\); dabei ist \(\hat\sigma_{LL}(t) = \sqrt{\textstyle\sum_{t_j \le t} \frac{d_j}{n_j (n_j - d_j)}} \,/\, |\ln \hat S(t)|\):

\[\hat S(t)^{\exp(\pm z\,\hat\sigma_{LL}(t))}\]

Die mittlere Lebenszeit bis \(\tau\) ist die Fläche unter der Treppe, \(\tau\) höchstens die größte Beobachtungszeit:

\[\hat\mu(\tau) = \int_0^{\tau} \hat S(t)\, dt\]

Die Welt der Demo, Verweilzeit \(D\) lognormal mit Median 4 und \(\sigma = 0{,}9\) (\(\Phi\): Verteilungsfunktion der Standardnormalverteilung):

\[S(t) = 1 - \Phi\!\left(\frac{\ln t - \ln 4}{0{,}9}\right), \qquad E[D] = 4\, e^{0{,}9^2/2} \approx 5{,}997\]

Die wahre mittlere Lebenszeit ist \(\int_0^\tau S(t)\,dt = \tau\,S(\tau) + E[D\,\mathbf 1(D \le \tau)]\).

Herleitung Schritt für Schritt

Dieser Block erklärt die Rechenschritte der Demo; wo er über deren Text hinausgeht, steht es dabei. Die Nummern sind nur Bezugspunkte für den Lesefluss.

  • Schritt 1, der Faktor: An jeder Ereigniszeit \(t_j\) waren \(n_j\) Container noch unter Beobachtung, \(d_j\) wurden abgeholt. Der Anteil, der diese Zeit übersteht, ist \((n_j - d_j)/n_j\), und die Kurve ist das Produkt dieser Anteile bis \(t\). Sie fällt nur an Ereigniszeiten.
  • Schritt 2, warum Zensierte im Risiko bleiben: Ein Zensierter hat die Zeit bis zum Ende seiner Beobachtung überlebt und zählt bis dahin in \(n_j\), danach gar nicht. So geht seine Information („mindestens so lange“) ein, ohne dass eine Abholzeit für ihn erfunden wird. Der Anteil ist ein Anteil unter denen, die die Zeit erreicht haben; dass diese Risikomenge keine Auswahl nach dem Ereignis ist, folgt aus der Annahme der unabhängigen Zensierung (Standardwissen, für diese Seite nicht an der Quelle geprüft).
  • Schritt 3, Gleichstand: Zeigt ein Tag eine Abholung und eine Zensierung, zählt das Ereignis zuerst, und der Zensierte bleibt an diesem Tag im Risiko. Das ist die Konvention \(T_i \ge t_j\) in \(n_j\).
  • Schritt 4, warum „Zensierte als Ereignis“ das Mittel aller Zeiten ist: Wer jede beobachtete Zeit als Abholung zu diesem Zeitpunkt liest, hat die Kurve 1 − empirische Verteilungsfunktion; die Fläche darunter ist das Mittel aller Zeiten.
  • Schritt 5, warum bei fester Frist der Median richtig bleiben kann: Rechnung, keine Messung: Liegt die Frist über dem wahren Median, wird mehr als die Hälfte der Container vor der Frist abgeholt, und der Median von \(\min(D, \text{Frist})\) ist dann der Median von \(D\). Für das Mittel aller Zeiten gilt das nicht.
  • Schritt 6, eine Zensierung hinter dem letzten Ereignis: Die Stufenzeiten der Kurve bleiben dieselben, die Werte nicht. Der Zensierte bleibt in jeder Risikomenge: Jeder Faktor wird \((n + 1 - d)/(n + 1)\), und die Werte der Kurve steigen (Eigenschaftstest der Demo).

Durchgerechnetes Beispiel

Handbeispiel mit sechs Containern (Beobachtungszeiten 2, 3+, 4, 5, 5+, 8; ein „+“ heißt: beim Ende noch da). Die Ereigniszeiten sind \(t = 2, 4, 5, 8\). Die Tabelle zeigt \(n_j\) und \(d_j\) wie in Experiment 1 der App; die Kurvenwerte nennt die README.

\(t_j\)\(n_j\)\(d_j\)Faktor \((n_j - d_j)/n_j\)\(\hat S(t_j)\)
2615/65/6
4413/45/8
5312/35/12
81100

Bei \(t = 3\) endet die Beobachtung des ersten Zensierten, bei \(t = 4\) bleiben also vier im Risiko. Bei \(t = 5\) steht eine Abholung neben einer Zensierung (5+): Das Ereignis zählt zuerst, der Zensierte bleibt im Risiko, \(n_j = 3\). Der Median ist 5, denn dort fällt die Kurve erstmals auf höchstens 0,5 (5/12 gegen 5/8 davor).

Das Mittel aller Zeiten ist \(27/6 = 9/2\), das Mittel nur der Ereignisse \(19/4\) (README). Die mittlere Lebenszeit bis 8 ist die Fläche unter der Treppe: Die Stufen ergeben 2, 5/3, 5/8 und 5/4, zusammen 133/24 (README). Die Greenwood-Varianz bei \(t = 5\) ist 85/1728 (README).

Befunde

Die Zahlen stammen aus der Messung der Demo (Messskript und eingefrorene Messdatei) und der README. Welt wie oben, 1000 Läufe je Zeile, Zufalls-Seeds 2000 bis 2999 (Überdeckung 5000 bis 5999, mittlere Lebenszeit 6000 bis 6999), Mittel über die Läufe ± Standardfehler des Mittels. Die Tests der Demo halten die Zahlen gegen die Messdatei und die README; die Neuberechnung ausgewählter Zellen vergleicht mit Toleranz, nicht exakt.

Frage (Beobachtungsfenster, n = 300, wenn nicht anders genannt)Befund
Fenster 30 Tage (19,6 % zensiert): Mittel aller Zeiten, nur Ereignisse, Median Kaplan–Meier4,73 ± 0,01 (−21,1 %), 4,53 ± 0,01 (−24,5 %), 4,00 ± 0,01 (wahr: Mittel 6,00, Median 4,00).
Fenster 8 Tage (55,6 % zensiert): dieselben drei2,80 ± 0,00 (−53,3 %), 2,60 ± 0,00 (−56,6 %), 4,00 ± 0,01.
Fenster 4 Tage (= wahrer Median, 77,6 % zensiert): Mittel aller, Median Kaplan–MeierMittel aller 1,74 ± 0,00 (−71,0 %); der Median ist in 44,6 % der Läufe vorhanden (in 55,4 % fehlt er), dort 3,61 ± 0,01.
Mittel aller bei n = 100, 300, 1000 (Fenster 30 Tage)4,74 ± 0,01, 4,73 ± 0,01, 4,74 ± 0,00 (−21,0 %, −21,1 %, −21,0 %): Mehr Daten reparieren das Mittel nicht.
Median der naiven Wege bei Fenster 30, 8, 4 Tage„Zensierte als Ereignis“ 3,43, 2,39, 1,62; „nur Ereignisse“ 3,41, 2,30, 1,58 (wahr 4,00). Bei Fenster 30 Tage: −14,3 % und −14,7 % gegen den wahren Median.
Feste Frist 30, 8, 4 Tage (1,3 %, 22,1 %, 49,9 % zensiert)Median „Zensierte als Ereignis“ 3,99 ± 0,01, 3,99 ± 0,01, 3,89 ± 0,00; Median „nur Ereignisse“ 3,94, 3,10, 2,17; Mittel aller 5,83, 4,45, 3,10. Frist 30 und 8 Tage nutzen dieselben Zufalls-Seeds; die beiden Werte 3,99 sind keine zwei unabhängigen Bestätigungen.
Median schätzbar bei Fenster 4, 5, 6, 8, 12, 30 Tage44,6 %, 90,7 %, 99,8 %, 100,0 %, 100,0 %, 100,0 % der Läufe.
Median schätzbar bei Fenster 4 Tage, je 1000 Läufe42,2 % (n = 100), 44,6 % (n = 300), 45,0 % (n = 1000), Binomial-Standardfehler je Wert rund 1,6 Prozentpunkte: kein deutlicher Anstieg, mehr Container machen den Median bei diesem Fenster nicht verlässlich schätzbar. Bei Fenster 5 Tage wächst der Anteil laut Prüfrechnung (Zufalls-Seeds 2000 bis 2999) mit n: 65 % bei n = 50, 79 % bei n = 100, 90,7 % bei n = 300 (wie in der Tabelle oben), 99,5 % bei n = 1000.
Überdeckung des nominalen 95-%-Bandes (11 Zellen, je 1000 Läufe)log-log 93,6 bis 95,9 %; einfach 90,1 bis 95,2 %, am kleinsten bei Fenster 30 Tage, n = 100, t = 12 (dort log-log 94,2 %; zwei der 1000 Läufe haben dort kein Band).
Mittlere Lebenszeit bis τ, Fenster 8 Tage, τ = 6 (wahr 3,915)Kaplan–Meier 3,92 ± 0,00 (+0,2 %); Mittel von min(Zeit, τ) 2,73 ± 0,00 (−30,2 %).
Mittlere Lebenszeit bis τ, Fenster 30 Tage, τ = 12 (wahr 5,086)Kaplan–Meier 5,10 ± 0,01 (+0,3 %); Mittel von min(Zeit, τ) 4,45 ± 0,01 (−12,5 %).
Kaplan–Meier hat bei kurzer Beobachtung meist kein Mittel der VerweilzeitIst die größte beobachtete Zeit zensiert, endet die Kurve oberhalb von null. Das trifft nach einer Prüfrechnung bei n = 300 für Fenster 30 Tage auf rund 71 % der Läufe zu, für Fenster 8 und 4 Tage auf mehr als 97 %; bei Fenster 60 Tage (längster Reglerwert) sind es nur noch rund 41 %. Die App gibt für Kaplan–Meier grundsätzlich kein Mittel der Verweilzeit aus, auch in Läufen, in denen die Kurve auf null endet (Festlegung der App).

Der Anteil schätzbarer Mediane hängt am Verhältnis von Fenster und wahrem Median: Liegt das Fenster über dem wahren Median von 4 Tagen (Beispiel: 5 Tage), wächst er mit n und nähert sich 100 %, liegt es darunter (Beispiel: 3 Tage), fällt er mit n; das zeigt die Prüfrechnung bis n = 1000, der Grenzwert folgt aus der Rechnung. Der Mittelwert der Mediane der Läufe, in denen es einen gibt, steigt dagegen mit n (3,40, 3,61, 3,76 bei Fenster 4 Tage): Er gilt nur für diese Läufe und ist kein Schätzwert für den Median.

Zur Absicherung der Rechnung: Kaplan–Meier wurde gegen ein Umverteilungsverfahren nach rechts in Brüchen (120 Zufallsinstanzen mit Gleichständen) geprüft, Greenwood gegen eine Bruchrechnung (60 Instanzen) und gegen einen Bootstrap (5 Stichproben), die Wahrheit gegen scipy.stats.lognorm.

Grenzen: was die Messung zeigt und was nicht

Wie ernst ist das Modell? Eine Welt (lognormal, Median 4, \(\sigma = 0{,}9\)) mit zwei Arten der Zensierung, beide unabhängig vom Ereignis: Die Zahlen sagen, wie sich die Wege dort verhalten, nicht, wie weit sie in echten Daten danebenliegen. Andere Verteilungen sind nicht gemessen.

  • Belegt: die Richtung und Größe der Fehler der naiven Wege in dieser Welt (Tabelle oben), und dass der Kaplan–Meier-Median bei Fenster 30 und 8 Tagen im Mittel über die Läufe den wahren Median trifft.
  • Belegt nicht: die Folgen abhängiger Zensierung. Wie weit Kaplan–Meier danebenliegt, wenn die Annahme verletzt ist, zeigt die Demo nicht. Die Richtung folgt aus der Rechnung (Container, die kurz vor der Abholung ausscheiden, zählen bis dahin als überlebt, ihre Abholung wird nie gezählt; die Kurve läge zu hoch), die Größe ist nicht gemessen.
  • Belegt nicht: Typ II, Linkszensierung, Intervallzensierung, konkurrierende Abholwege. Die Demo zeigt das Beobachtungsfenster und die feste Frist (Typ I); Typ II ist nicht umgesetzt.
  • Bänder sind punktweise, nicht als Streifen über die ganze Kurve; die Überdeckung ist nur an den elf Zellen der Tabelle gemessen.
  • Eigener Kern: Kaplan–Meier ist selbst geschrieben und gegen ein Umverteilungsverfahren, eine Bruchrechnung des Greenwood-Terms, einen Bootstrap und scipy für die Wahrheit geprüft; ein Fremdvergleich mit lifelines oder statsmodels fehlt.
  • Einzelne Stichproben sind kein Befund: Die App rechnet zusätzlich live über 30 feste Zufalls-Seeds (7000 bis 7029) für die gewählten Einstellungen; diese Zahlen stehen in keiner README und nicht auf dieser Seite.

Erweiterungen und Verweise

  • Vergleich zweier Gruppen, Merkmale, parametrische Familien und abhängige (informative) Zensierung sind in dieser Demo bewusst nicht umgesetzt; laut den Karten der Überlebenszeit-Seite nehmen sich weitere Demos je eine dieser Grenzen vor, etwa Log-Rank und mittlere Lebenszeit für zwei Kurven, Hazard und Weibull für das Rechnen über das Fenster hinaus, die Cox-Regression für Merkmale und das informative Zensieren für die verletzte Annahme.
  • Ohne Zensierung: Die Verweilzeit der Container ohne Beobachtungsende steht in der verweilzeit-demo.

Quellen

  • Kaplan, E. L., Meier, P. (1958): Nonparametric estimation from incomplete observations. Journal of the American Statistical Association 53 (Seitenzahlen nicht geprüft). Lesestufe: nicht eingesehen, aus dem Gedächtnis; kein Wert der Demo stammt daraus.
  • Klein, J. P., Moeschberger, M. L. (2003): Survival Analysis, 2. Auflage, Springer (Kapitel zu Zensierung und Kaplan–Meier). Lesestufe: nicht zugänglich, nur als Suchtreffer bekannt; kein Wert der Demo stammt daraus.
  • Quelltext, Messreihen und Tests der Demo: github.com/sebastian-hanisch/kaplan-meier-demo.

Die beiden Werke wurden für diese Seite nicht nachgeschlagen; die Angaben stammen aus der README der Demo, die sie ausdrücklich als nicht eingesehen ausweist. Die Erklärung des Kaplan–Meier-Verfahrens, des Greenwood-Bands und der Zensierung ist Standardwissen der Überlebenszeitanalyse bzw. stammt aus dem Expander der App; sie wurde für diese Seite nicht an Lehrbüchern geprüft. Die Beispielrechnung ist eine Rechnung dieser Seite aus dem Handbeispiel der Demo.