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

Ein Konfidenzband für ROC-Kurven mit SAS

  • Upload
    herve

  • View
    40

  • Download
    5

Embed Size (px)

DESCRIPTION

Ein Konfidenzband für ROC-Kurven mit SAS. Steffen Witte und Katrin Jensen Universität Heidelberg Abteilung Medizinische Biometrie. Publikationen mit und über ROC in PubMed. Einführung: Diagnostik. Testsituation : Überprüfung einer (binären) Größe mit einer anderen (mind. ordinalen) Größe - PowerPoint PPT Presentation

Citation preview

Page 1: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 1

Ein Konfidenzband für ROC-Kurven mit SAS

Steffen Witte und Katrin JensenUniversität Heidelberg

Abteilung Medizinische Biometrie

Page 2: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 2

Publikationen mit und über ROC in PubMed

Page 3: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 3

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

Page 4: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 4

cutoff Sens und Spec

3 Dichtefunktionen von Normalverteilungen

0,000

0,001

0,002

0,003

0,004

0,005

0,006Gesunde (K-)

Leberfibrosen (K+)

Leberzirrhosen

cutoff

Sens

Spez

Page 5: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 5

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 24T- 6 30 36 25 35 60

Page 6: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 6

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)

Page 7: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 7

Beispiel ROC-Kurve (N=190)

Page 8: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 8

etwas Theorie zu Konfidenzbändern

• Punktweise KonfidenzintervalleP(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%

Page 9: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 9

etwas Theorie zu Konfidenzbändern

• Punktweise Konfidenzintervalleexakte Konfidenzintervalle basierend auf der Binomialverteilung (Daly L, 1992) – %cibinomexact

• Punktweise Konfidenzbänder Methode nach Hilgers (Hilgers RA, 1991) – %roccihMethode nach Schäfer (Schäfer H, 1994)

• Simultane Konfidenzbänder Methoden nach Campbell (Campbell G, 1994)Methode nach Jensen (Jensen K, 2000)

Page 10: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 10

Two-stage confidence bounds

• Betrachte einen beliebigen cutoff; Se, Sp schon geschätzt

1. Berechne KI [Xp, Xp] für xp = cutoff der Spezifität p liefert: Verwendung der K- Daten (nur der Gesunden) mittels empirischer Quantilfunktion

2. 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)

Page 11: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 11

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;

Page 12: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 12

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)

Page 13: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 13

ROC für ln(LDH)

filename ausgabe 'ldh-line1.pdf';%rocplot( gfile = ausgabe, gdev = pdf, citype = line,

inset = lnldh2, by = _test, lcl=, ucl=);

Page 14: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 14

ohne Konfidenzband (ln(LDH))

Page 15: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 15

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);

Page 16: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 16

mit punktweisen KI (ln(LDH))

Page 17: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 17

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);

Page 18: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 18

Beispiel: mit Konfidenzband (ln(LDH))

Page 19: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 19

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 = );

Page 20: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 20

4 ROC (random)

Page 21: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 21

1 ROC, citype=area, lcl=_lclh, ucl=_uclh

Page 22: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 22

2 ROC, citype=area , lcl=_lclh, ucl=_uclh

Page 23: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 23

3 ROC, citype=area , lcl=_lclh, ucl=_uclh

Page 24: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 24

4 ROC, citype=area , lcl=_lclh, ucl=_uclh

Page 25: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 25

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.

Page 26: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 26

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

Page 27: Ein Konfidenzband für ROC-Kurven mit SAS

KSFE 2003, Seite 27

Vielen Dank

Diese Präsentation steht unterden „technical reports“ im Netz:

http://www.biometrie.uni-heidelberg.de

Die SAS-Programme sind erhältlich bei [email protected]