ONCOcurve führt vollständige Überlebenszeitanalysen direkt im Browser durch: Kaplan-Meier-Kurven, Log-Rank-Test (auch gewichtete Varianten), Cox-Regression und Zeit bis Erstbehandlung (TTFT). Sie laden oBDS-XML, CSV oder Excel, filtern und stratifizieren die Kohorte ohne Programmierkenntnisse und exportieren Grafiken, Tabellen und einen vollständigen PDF-Report. Alle Berechnungen laufen lokal auf Ihrem Gerät; es werden keine Patientendaten übertragen. Diese Seite erklärt jede Funktion Schritt für Schritt.
Die Verarbeitung erfolgt lokal im Browser.
Filter schränken die analysierte Kohorte ein, ohne die Originaldaten zu verändern. Alle aktiven Filter werden im Ergebnis und in jedem Export angezeigt, sodass eine Analyse exakt reproduzierbar bleibt.
Teilen Sie die Kohorte in Gruppen, um ihre Überlebenskurven zu vergleichen. Wählen Sie ein Kriterium in der Seitenleiste; pro Gruppe entsteht eine eigene farbige Kurve, und Log-Rank-Test sowie Cox-Regression laufen automatisch.
Wird eine Kohorte nach „Ausbreitungskategorie" stratifiziert, leitet die App die Kategorie automatisch aus der TNM-Klassifikation jedes Falls ab. TNM-Werte werden dabei normalisiert: das c/p-Präfix und Subkategorie-Suffixe werden ignoriert (z. B. cT1c, pT1 → T1; M1b → M1). Die Einteilung funktioniert auch bei unvollständigem TNM – bereits ein M1 oder ein positiver Lymphknotenstatus genügt.
| Kategorie | Regel (TNM) |
|---|---|
| Metastasiert | M1 (unabhängig von T und N) |
| Fortgeschritten | N1, N2 oder N3 (regionäre Lymphknoten) |
| Lokal fortgeschritten | T3 oder T4, mit N0 und M0 |
| Lokal begrenzt | T1 oder T2, mit N0 und M0 |
| Carcinoma in situ | Tis, mit N0 und M0 |
| Unbekannt | kein ausreichendes TNM vorhanden |
Die Regeln werden von oben nach unten geprüft; die erste zutreffende Kategorie gewinnt. Die T-basierten Kategorien verlangen ein dokumentiertes N0 und M0, damit eine unbekannte Ausbreitung nicht fälschlich als lokal begrenzt gewertet wird.
Die Kaplan-Meier-Kurve schätzt die Überlebenswahrscheinlichkeit über die Zeit.
Der Log-Rank-Test vergleicht Überlebenskurven.
Der Standard-Log-Rank ist optimal bei proportionalen Hazards. Bei sich kreuzenden Kurven oder nicht-proportionalen Hazards bieten gewichtete Varianten mehr Power, indem sie bestimmte Zeitbereiche stärker betonen. Die Variante kann in der Plot-Darstellungs-Sidebar gewählt werden.
| Variante | Gewicht w(t) | Wann nutzen |
|---|---|---|
| Standard (Mantel-Haenszel) | w(t) = 1 | Default; optimal bei proportionalen Hazards. Uniforme Gewichtung über alle Event-Zeitpunkte. |
| Wilcoxon (Gehan-Breslow) | w(t) = n(t) | Gewichtet frühe Ereignisse stärker (n(t) im Nenner sinkt mit der Zeit). Sensitiv für frühe Unterschiede, weniger sensitiv für späte Plateau-Unterschiede. |
| Peto-Peto | w(t) = S~(t-) | Gewichtet mit der gepoolten Überlebensfunktion S(t) (Prentice-Modifikation). Robuste Variante von Wilcoxon, weniger empfindlich gegen Zensierungs-Muster. |
| Tarone-Ware | w(t) = √n(t) | Kompromiss zwischen Standard und Wilcoxon (√n(t)). Allround-Variante wenn unklar wo Unterschiede liegen. |
Hinweis: Die Wahl der Variante sollte vor Ansicht der Daten erfolgen, nicht nach dem niedrigsten p-Wert (Cherry-Picking-Risiko). Im Zweifel den Standard-Log-Rank reporten und gewichtete Varianten als Sensitivitätsanalyse.
Die Cox-Regression schätzt Hazard Ratios für Gruppen.
Laden Sie oBDS-XML- oder CSV-Dateien hoch.
Die Spaltenreihenfolge ist beliebig. Die Zuordnung erfolgt über den Spaltennamen (Header). Akzeptierte Aliase pro Feld sind unten gelistet.
gender, age, staging, grading, T/N/M, tumorCategory, primaerfall
Beliebige weitere Spalten (z.B. „medication", „treatment_arm", „dose_mg") werden automatisch als Stratifizierungsvariablen verfügbar gemacht.
Hat Ihre Datei eine Spalte firstTreatmentDate, schaltet das Tool automatisch auf den TTFT-Endpunkt um. Die Zeit läuft dann von der Erstdiagnose bis zur ersten Therapie (Ereignis), sonst bis zum letzten Kontakt (zensiert).
survivalTime und event müssen Sie nicht angeben, sie werden aus den Daten abgeleitet. Tod vor Therapie wird pragmatisch beim Tod zensiert (kein Fine-Gray-Modell).
Beispieldatei herunterladen (CLL, IGHV)Jedes Ergebnis lässt sich vollständig exportieren, für Berichte, Publikationen oder die unabhängige Nachrechnung.
Beim Upload und auf der Ergebnisseite werden Datensätze auf Plausibilität und Konsistenz geprüft. Vier Klassen werden unterschieden.
Logik-Fehler (z.B. Tod vor Diagnose, Diagnose in der Zukunft) blockieren den Upload. Ein Modal listet die betroffenen Datensätze; eine CSV-Liste kann zur Korrektur in der Quelldatei heruntergeladen werden. Plausibilität, Outlier und Duplikate fließen durch und erscheinen erst auf der Ergebnisseite.
Im Anomalie-Panel sind die Datensätze nach Klasse gruppiert. Pro Patient gibt es eine Checkbox, zusätzlich Bulk-Toggle pro Klasse und eine 'Alle exkludieren'-Aktion. Exkludierte Patienten fließen aus KM, Cox, Log-Rank, Tabelle und Excel-Export sofort raus. Der Zustand wird pro Datensatz in sessionStorage gespeichert (Tab-Reload behält ihn, neuer Tab nicht).
Outlier werden einmalig auf der Original-Kohorte berechnet und bleiben statisch, auch wenn Sie Outlier exkludieren. Sonst entstünde eine kaskadierende Liste.
| Regel-ID | Klasse | Verhalten |
|---|---|---|
| death_before_diagnosis | logic | block |
| last_contact_before_diagnosis | logic | block |
| diagnosis_in_future | logic | block |
| negative_survival_time | logic | block |
| age_out_of_range | logic | block |
| dead_without_death_date | logic | block |
| tnm_t0_with_metastasis | plausibility | warn |
| survival_over_25_years | plausibility | warn |
| very_short_followup_alive | plausibility | warn |
| diagnosis_year_unrealistic | plausibility | warn |
| diagnosis_date_outlier | outlier | warn |
| duplicate_patient_id | duplicate_or_missing | warn |
| missing_diagnosis_date | duplicate_or_missing | warn |
| missing_vital_status | duplicate_or_missing | warn |
Das entitätenspezifische Staging basiert auf dem TNM-Atlas von Wittekind et al. in der 9. Auflage (Wiley, Nov. 2025). Nicht alle onkologischen Entitäten sind darin enthalten-die Klassifikation gilt ausschließlich für die nachfolgend aufgeführten Tumorentitäten.
Enthaltene Entitäten (61):