Curba ROC în SPSS

Pentru a înțelege acest concept vom defini mai întâi conceptele de sensibilitate și specificitate a unui fenomen.

Atunci când construim un model studiem legătura dintre predicție și răspuns. Pornind de la aceste concepte, putem avea patru posibilități când realizăm un model (inițialele codurilor provin din engleză TP – true positive, TN – true negative, FP – false positive, FN – false negative):

  • TP – Predicție pozitivă, răspuns pozitiv
  • TN – Predicție negativă, răspuns negativ
  • FP – Predicție pozitivă, răspuns negativ
  • FN – predicție negativă, răspuns pozitiv

Atunci vom defini:

  • Sensibilitatea = TP/(TP+FN) (cazurile de predictii pozitive supra cazurile cu răspunsuri pozitive)
  • Specificitatea = TN /(TN+FP) (cazurile de predictii negative supra cazurile cu răspunsuri negative)

Curba ROC (Receiver Operating Characteristics) este o curba bidimensională în care pe axa Y avem sensibilitatea și pe axa X avem specificitatea. Această curba ne ajută să măsurăm eficiența unui model. Cu cât aria de sub curbă este mai mare (maximul este 1) cu atât modelul este mai bun.

  • Aria > 0,9 – excelent
  • 0,9 > Aria > 0,8 – foarte bun
  • 0,8 > Aria > 0,7 – bun
  • 0,7 > Aria > 0,6 – corect (fair)
  • Aria < 0,6 – modelul se respinge

Curba ROC se folosește în medicină și de aceea exemplul ce-l voi da va fi din acest domeniu:

Fie un test (prin test se poate înțelege o serie de analize, rezultatul unui scor sau chiar prezența sau absența unor simptome) aplicat la 30 de pacienți. Fiecărei valori îi asociem o valoare binară 0 sau 1 corespunzătoare faptului că nu este prezentă boala, respectiv este prezentă. (Datele de mai jos sunt fictive și au rolul de a ajuta la înțelegerea folosirii acestui instrument).

mart_004

Pentru realiza curba ROC vom da un clic pe Analyze – ROC Curve și se va deschide fereastra:

mart_005

În fereastra Test Variable vom pune variabila scor iar la State Variable vom pune prez_boala. In fereastra Value of State Variable vom pune valoarea ce indică prezența bolii – în cazul nostru valoarea 1. Vom da un clic pe OK și vom obține fereastra Outputmart_006

Primul tabel conține o statistică descriptivă: număr de cazuri pozitive și număr de cazuri negative

mart_007

Ultimul tabel conține informații despre semnificabilitatea curbei.

mart_009

Aria este 0,950 deci modelul este excelent, lucru pe care-l putem observa și din analiza valoarii p = 0,000 (Asymptotic Sig). Ultimele 2 rubrici ale tablelului ne dau marginile intervalului de încredere.

Coeficientul phi

De multe ori datele pe care le avem pot fi reduse la două categorii: cazuri favorabile și cazuri nefavorabile. Sau, în medicină de exemplu, prezența unui simptom sau absența lui. Pentru a studia gradul de asociere al varibilelor putem folosi coeficientul φ (în literatura de specialitate îl găsim sub denumirea coeficentul phi). Pentru a explica modul în care se poate calcula acest coeficient cu ajutorul PSPP-ului voi lua un exemplu.

Fie o bază de date în care, pe un lot de 50 de pacienți, s-a studiat pentru o boală prezența (sau absența) mai multor simptome:

feb_030

Dorim să studiem dacă există o asociere între simptomul 1 și celelalte simptome. Pentru aceasta, vom pune datele în PSPP (în această postare am arătat cum se pot importa datele din Excel în PSPP):

feb_031

Apoi vom da clic pe următoarele opțiuni: Analyze – Descriptive statistics – Crosstabs. Se va deschide fereastra:

feb_032

Deoarece dorim să comparăm simptomul 1 cu celelalte simptome am pus In prima fereastră simptomul 1 și celelalte le-am pus în a doua fereastră. Apoi vom da clic pe Statistics pentru a indica ceea ce dorim să calculăm:

feb_033

Am bifat opțiunea Phi, apoi dăm un clic pe Continue, iar în fereastra ce apare vom da un clic pe OK. Va obține următoarea fereastră Output:

feb_034

(am pus doar un fragment din fișierul Output). Pentru a interpreta coeficientul vom folosi următoarele reguli:

  • de la 0 la 0,3 nu avem asociere între variabile.
  • 0,3 la 0,7 avem o asociere slabă a variabilelor
  • peste 0,7 asociere puternică a variabilelor

Trebuie ținut cont de faptul că acest coeficient, la un număr mare de înregistrări, poate da erori la valorile marginale.