De ce să folosim analiza de supraviețuire?

Analiza de supraviețuire în Python

Shae Wang

Senior Data Scientist

Exemplu: durata medie de viață a bateriei

Nume DataFrame: battery_df

ID baterie Durată Defectă Brand Camion
1 2,5 ani Nu Brand A Lung
2 6 ani Da Brand B Scurt
3 5 ani Nu Brand B Lung
... ... ... ... ...
1000 4,5 ani Da Brand A Scurt

Care este durata medie de viață a bateriei?

np.average(battery_df["Duration"])
Analiza de supraviețuire în Python

Exemplu: durata medie de viață a bateriei

Desen cenzurare durată baterie.

Analiza de supraviețuire în Python

Cenzurarea în durata de viață a bateriei

Desen cenzurare durată baterie.

  • $T_{duration} \neq T_{lifetime}$ pentru bateriile care nu s-au defectat.
  • Bateriile 1, 3, 4 și alte baterii ale căror defecțiuni nu au fost observate sunt contabilizate incorect în calculul mediei.
Analiza de supraviețuire în Python

Problema cenzurării

Când durata de supraviețuire este cunoscuta doar parțial.

Cum apare cenzurarea?

  • Evenimentul nu a avut loc până la sfârșitul observației.
    • ex.: un utilizator în perioadă de probă nu a trecut la un abonament plătit până la finalul experimentului.
  • Datele individului lipsesc din cauza abandonului sau pierderii contactului.
    • ex.: un utilizator în perioadă de probă refuză să partajeze datele pentru experiment.
Analiza de supraviețuire în Python

Tipuri de cenzurare

Tipuri de cenzurare - desen.

  • Necenzurat: evenimentul a avut loc și durata de supraviețuire este cunoscută.
  • Cenzurat la dreapta: durata de supraviețuire este mai mare decât durata observată.
  • Cenzurat la stânga: durata de supraviețuire este mai mică decât durata observată.
  • Cenzurat pe interval: durata de supraviețuire se află într-un interval, dar nu este exact cunoscută.
Analiza de supraviețuire în Python

De ce este problematică cenzurarea?

Statistici agregate

  • Un tip de date lipsă.
  • Distorsionează statisticile, ex.: np.average(), max(), min().

Regresie

  • Regresia liniară minimizează suma pătratelor erorilor.
  • Pentru datele cenzurate, termenii de eroare sunt necunoscuți.
Analiza de supraviețuire în Python

Funcția de supraviețuire

  • Nu imputează datele cenzurate.
  • Modelează probabilitatea ca durata de supraviețuire să fie mai mare decât o anumită valoare.

  $$S(t)=Pr(T>t)$$

Analiza de supraviețuire în Python

Analiza de supraviețuire versus cenzurare

Desen date necenzurate.

Desen date cenzurate.

Analiza de supraviețuire în Python

Verificarea datelor pentru cenzurare

Există o modalitate de a identifica punctele de date cenzurate?

Pasul 1) Verificați coloanele de cenzurare (adesea preprocesate).

Sunt prea multe date cenzurate?

Pasul 2) Verificați proporția datelor cenzurate (regula empirică: 50%).

Cenzurarea este neinformativă și aleatorie?

Pasul 3) Investigați cauzele cenzurării pentru a vă asigura că aceasta nu influențează supraviețuirea.

Analiza de supraviețuire în Python

Să exersăm!

Analiza de supraviețuire în Python

Preparing Video For Download...