Ein Konfidenzband für ROC-Kurven mit SAS

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

Fast Fourier Transformation
ER-Datenmodell und Abfragen in SQL
Rekursion: Rekurrenz: Algorithmen rufen sich selbst (rekursiv) auf.
Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
PKJ 2005/1 Stefan Dissmann Vorwoche - Klasse public class Studierende { private String name, vorname, studiengang; private int matNr, semester; private.
TECHNISCHE UNIVERSITÄT DARMSTADT Naive Bayes for Ranking
Maschinelles Lernen   Präsenzübung.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2012.
Portal: E-Books Suche nach E-Books
Standortfaktoren INTERN - Ausdrucksstark präsentieren.
Übersicht DIALIGN = DIagonal ALIGNment
Der Einstieg in das Programmieren
Der Binomialtest Man habe einen wahren Anteil P.
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
Konfidenzintervalle für Parameter
Neutrinomassenbestimmung aus dem Tritiumzerfall
Der letzte Schliff für Abfragen Übersicht über die Aggregatfunktionen.
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
Geometrische Objekte in Datenbanken Martin Pfeifle Institut für Informatik, Universität München Lehr- und Forschungseinheit für Datenbanksysteme Prof.
Eingabe und Kodierung von Daten in SPSS
Inhalte und Maßnahmen eingegeben haben,
Wismar Business School
Fuzzy-Klima-Regelung Simulink für Fuzzy Control
Kennlinie Lichtregelung in JavaNNS Version 1.1
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
Übung 1: SQL Übungen finden bei Bedarf anstelle der Vorlesungen statt
Vorlesung: Biometrie für Studierende der Veterinärmedizin
Vorlesung: Biometrie für Studierende der Veterinärmedizin
Vorlesung: Biometrie für Studierende der Veterinärmedizin Helmut Küchenhoff 1 Zusammenfassung zur Vorlesung Begriff der biologischen Variabilität.
Vorlesung Biometrie für Studierende der Veterinärmedizin Zur Kommunikation von Wahrscheinlichkeiten Relative Häufigkeiten sind grundsätzlich.
Zur Kommunikation von Wahrscheinlichkeiten
Wiederholung und Beispiele
Vorlesung Biometrie für Studierende der Veterinärmedizin Begriff der Zufallsgröße Ergebnisse von Zufallsexperimenten werden als Zahlen dargestellt:
Hydrologisches Praktikum I
Eigenschaften der OLS-Schätzer
Histogramm/empirische Verteilung Verteilungen
TWS/Graph HORIZONT Produkt-Präsentation Software für Rechenzentren
Kollektionen in Java Aufzählungstypen, Generische Typen
Polynome und schnelle Fourier-Transformation
Seminar: Datenerhebung
Präsentation läuft auch vollautomatisch ab … wie du möchtest
Auslegung eines Vorschubantriebes
STATISIK LV Nr.: 1375 SS März 2005.
Konfidenzintervall und Testen für den Mittelwert und Anteile
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #6 SQL (Teil 3)
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #7 SQL (Teil 2)
Analyse von Ablaufdiagrammen
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
HORIZONT 1 XINFO ® Das IT - Informationssystem Assembler HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 /
Datenbanksysteme für hörer anderer Fachrichtungen
Einführung in Datenbankmodellierung und SQL
Aggregatsfunktion SQL = Structured Query Language.
Schulentwicklung Volksschule / HS / NMS …. basierend auf dem Zahnradmodell der Bewegten Schule Stand: Sept
Das IT - Informationssystem
SQL - Structured Query Language AIFB SS (1/9) Join-Operationen in SQL-92(1/9) Syntax einer Join-Operation: join-op := CROSS JOIN | [NATURAL]
Am Beispiel der Tabelle Crew des Raumschiffes Enterprise
Analyseprodukte numerischer Modelle
Verdichten von Daten mit Gruppenfunktionen
Schulentwicklung Volksschule / HS / NMS …. basierend auf dem Zahnradmodell der Bewegten Schule Stand: Sept
Grafische Visualisierung von Softwarestrukturen
Structured Query Language
Der Erotik Kalender 2005.
Alois Schütte Advanced System Programming 2 Interprozeßkommunikation  2.1 JVM Ablaufumgebung  2.2 Java Native Interface (JNI)  Verwendung von.
Das IT - Informationssystem
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
WS 2014/15 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #6 SQL (Teil 3)
Methoden epidemiologischer Forschung
 Präsentation transkript:

Ein Konfidenzband für ROC-Kurven mit SAS Steffen Witte und Katrin Jensen Universität Heidelberg Abteilung Medizinische Biometrie KSFE 2003, Seite 1

Publikationen mit und über ROC in PubMed KSFE 2003, Seite 2

Einführung: Diagnostik Testsituation: Überprüfung einer (binären) Größe mit einer anderen (mind. ordinalen) Größe Beispiel 1: Krankheitsstatus (gesund/krank)  Testverfahren anhand eines Laborwertes Beispiel 2: retrospektive Kreditwürdigkeit (gegeben=Darlehen zurückgezahlt/nicht gegeben)  Kreditwürdigkeitsprüfung anhand eines multiplen Scores Beispiel 3: Fehler in einem Material (nicht)hinzugefügt  Scanverfahren zum Auffinden von Materialfehlern KSFE 2003, Seite 3

cutoff  Sens und Spec KSFE 2003, Seite 4

Schätzung der Sensitivität und Spezifität K+ krank, K- gesund T+ positiver Test (Testwert>cutoff), T- negativer Test Sensitivität = Wahrscheinlichkeit einen Kranken mit dem Test auch als krank zu erkennen = P(T+ | K+)  19/25 Spezifität = Wahrscheinlichkeit einen Gesunden mit dem Test auch als gesund zu erkennen = P(T- | K-)  30/35 K+ K-  T+ 19 5 24 T- 6 30 36 25 35 60 Wenn sehr kleiner cutoff => alle als krank (T+) bezeichnen => Sensitivität = 1 Wenn sehr großer cutoff => alle als gesund (T-) bezeichnen => Spezifität = 1 KSFE 2003, Seite 5

ROC = reciever operating characteristic ROC-Kurve: graphische Darstellung von Spezifität (x-Achse) und Sensitivität (y-Achse) für alle möglichen cutoffs. Nichtparametrischer Schätzer: jeder Wert des Testergebnisses ist ein möglicher cutoff berechne jeweils Sens und Spec (%rocn – KSFE2002) ggf. mit mehreren Tests (die zu vergleichen sind) graph. Darstellung: proc gplot (%rocplot – KSFE2002) KSFE 2003, Seite 6

Beispiel ROC-Kurve (N=190) KSFE 2003, Seite 7

etwas Theorie zu Konfidenzbändern Punktweise Konfidenzintervalle P(LCL(c)  Sens(c)  UCL(c)) = 95% für alle cutoffs Punktweise Konfidenzbänder (Niveau wird nur für eine bestimmte Spezifität eingehalten – oder für einen bestimmten Schwellenwert) P(LCL(Sp)  Sens(Sp)  UCL(Sp)) = 95% für alle Sp Simultane Konfidenzbänder (Vertrauensbereiche für alle Sensitivitäten simultan über einem Spezifitätsintervall) P(LCL(Sp)  Sens(Sp)  UCL(Sp) für alle Sp) = 95% pKI: sehr (zu) eng pKB: eng sKB: weit KSFE 2003, Seite 8

etwas Theorie zu Konfidenzbändern Punktweise Konfidenzintervalle exakte Konfidenzintervalle basierend auf der Binomialverteilung (Daly L, 1992) – %cibinomexact Punktweise Konfidenzbänder Methode nach Hilgers (Hilgers RA, 1991) – %roccih Methode nach Schäfer (Schäfer H, 1994) Simultane Konfidenzbänder Methoden nach Campbell (Campbell G, 1994) Methode nach Jensen (Jensen K, 2000) pKI: sehr (zu) eng pKB: eng sKB: weit KSFE 2003, Seite 9

Two-stage confidence bounds Betrachte einen beliebigen cutoff; Se, Sp schon geschätzt Berechne KI [Xp, Xp] für xp = cutoff der Spezifität p liefert: Verwendung der K- Daten (nur der Gesunden) mittels empirischer Quantilfunktion Finde die Sensitivitäten für die obigen cutoffs: Sens(Xp), Sens(Xp): Verwendung der K+ Daten (nur die Kranken) verwende diese für die Berechnung des KIs für die ROC: z.B. untere Grenze: Sens(Xp) – z * sqrt(Sens(Xp) * (1-Sens(Xp)) / n) KSFE 2003, Seite 10

SAS-Umsetzung: SQL 1. Schritt: Finde den cutoff, so dass dort die Spec. minimal, aber nicht kleiner als die KI-Grenze von Spec. (_plzphi) proc sql; create table __ci4 as select b.*, a.&cutoff. as _xpl, a.&spec. as _tmpsl from __ci3 as b left join __spec as a on 1 where (a.&spec. ge b._plzphi) group by b.&cutoff. having _tmpsl = min(_tmpsl); [...] quit; 2. Schritt im Prinzip genauso, auch ein sql-join KSFE 2003, Seite 11

Beispiel 1: Aufruf des SAS-Macros %rocn %rocn(inset = lnldh, event = diag, tests = lnldh, outset2 = lnldh2); %rocn verwendet: %roc1, %pv, %cibinomexact, %roccih %rocn liefert folgende output-Variablen: _test, _fn, _cn, _cp, _fp, _n, _negative, _positive, _events, _nonevents, _cutoff1, _cutoff2, _cutoff1_label, _cutoff2_label, _1mspec, _youden, _sens, _spec, _lclh, _uclh, _prev, _npv, _ppv, _hits, _acc, (_sens _spec _acc _ppv _npv)*(_exlcl _exucl) KSFE 2003, Seite 12

ROC für ln(LDH) filename ausgabe 'ldh-line1.pdf'; %rocplot( gfile = ausgabe, gdev = pdf, citype = line, inset = lnldh2, by = _test, lcl=, ucl=); KSFE 2003, Seite 13

ohne Konfidenzband (ln(LDH)) KSFE 2003, Seite 14

mit punktweisen KI (ln(LDH)) filename ausgabe 'ldh-line2.pdf'; %rocplot( gfile = ausgabe, gdev = pdf, citype = line, lvalue = "CI pointwise for sens.", inset = lnldh2, by = _test, lcl=_sens_exlcl, ucl=_sens_exucl); KSFE 2003, Seite 15

mit punktweisen KI (ln(LDH)) KSFE 2003, Seite 16

mit Konfidenzband (ln(LDH)) filename ausgabe 'ldh-line3.pdf'; %rocplot( gfile = ausgabe, gdev = pdf, citype = line, lvalue = "CI using Hilgers method", inset = lnldh2, by = _test, lcl=_lclh, ucl=_uclh); KSFE 2003, Seite 17

Beispiel: mit Konfidenzband (ln(LDH)) KSFE 2003, Seite 18

Beispiel 2: Aufruf der SAS-Macros %rocn(inset = random, event = diag, tests = RAN1 RAN2 RAN3 RAN4, outset2 = random2 anno); filename ausgabe 'ran-line4.pdf'; %rocplot( gfile = ausgabe, gdev = pdf, citype = line, inset = random2(where = (_test in ("RAN1","RAN2","RAN3","RAN4"))), by = _test, lcl = , ucl = ); KSFE 2003, Seite 19

4 ROC (random) KSFE 2003, Seite 20

1 ROC, citype=area, lcl=_lclh, ucl=_uclh KSFE 2003, Seite 21

2 ROC, citype=area , lcl=_lclh, ucl=_uclh KSFE 2003, Seite 22

3 ROC, citype=area , lcl=_lclh, ucl=_uclh KSFE 2003, Seite 23

4 ROC, citype=area , lcl=_lclh, ucl=_uclh KSFE 2003, Seite 24

Diskussion ROC-Kurven werden häufig angewandt. Konfidenzbänder sind sinnvoller als punktweise KI. Berechnung von Punktschätzern und einem Konfidenzband (Hilgers Methode) ist mit %rocn möglich. Die graphische Darstellung kann mit proc gplot und der gesamten Flexibilität von SAS/GRAPH gemacht werden. %rocplot bietet die Möglichkeit Standardgraphiken zu erstellen (siehe auch pdf‘s). Ausblick: Die Umsetzung in ein SAS-Macro von weiteren (effizienteren und simultanen) KonfidenzBändern wäre sinnvoll. KSFE 2003, Seite 25

Literatur Daly L (1992). Simple SAS macro for the calculation of exact binomial and Poisson confidence limits. Comput. Biol. Med., 22:351-361 Hilgers RA (1991). Distribution-free confidence bounds for ROC curves. Meth. of Inform. in Med. 30:96-101 Schäfer H (1994). Efficient confidence bounds for ROC curves. Statistics in Medicine 13:1551-1561 Campbell G (1994). Advances in statistical methodology for the evaluation of diagnostic and laboratory tests. Statistics in Medicine 13: 499-508 Jensen K, Müller HH, Schäfer H (2000). Regional confidence bands for ROC curves. Statistics in Medicine 19:493-509 KSFE 2003, Seite 26

Die SAS-Programme sind erhältlich bei sas@imbi.uni-heidelberg.de Vielen Dank Diese Präsentation steht unter den „technical reports“ im Netz: http://www.biometrie.uni-heidelberg.de Die SAS-Programme sind erhältlich bei sas@imbi.uni-heidelberg.de KSFE 2003, Seite 27