ניתוח הישרדות

מתוך ויקיפדיה, האנציקלופדיה החופשית
קפיצה לניווט קפיצה לחיפוש

בסטטיסטיקה, ניתוח הישרדות הוא שם כולל לשיטות ומודלים לניתוח משך הזמן העובר עד להתרחשות אירוע מסוים (או אירועים). אירוע כזה יכול להיות, לדוגמה, מוות של חולה או קלקול במערכת מכנית כגון מכונה כלשהי. בעזרת ניתוח השרדות ניתן לענות על שאלות כגון: איזה אחוז מאוכלוסיית החולים יישארו בחיים לאחר פרק זמן מסוים? איזה גורמים משפיעים על הסיכון למות? האם טיפול תרופתי מסוים מאריך את תוחלת החיים? כמה אנשים מתים מנזקי העישון?

כדי לענות על שאלות כגון אלה, יש להגדיר תחילה מהו "משך החיים", כלומר מהו משך הזמן שעבר עד התרחשות האירוע. במקרה של מוות של אדם התשובה ברורה. אולם לעיתים ההגדרה יותר מעורפלת. למשל, הזמן שעובר מאז שאדם חולה במחלה כלשהי ועד שחלה החמרה קלינית במצבו בדרך כלל אינו מוגדר היטב. לא ברור מתי האדם חלה (ומועד זה שונה בדרך כלל ממועד האבחון), וגם לא ברור כיצד החמרה קלינית מוגדרת וכיצד קובעים מתי היא התרחשה. הגדרת משך החיים היא לכן בדרך כלל סובייקטיבית, ועשויה להשפיע על תוצאת הניתוח הסטטיסטי.

התחום של ניתוח הישרדות עוסק בניתוח משכי הזמן שעוברים עד התרחשות שחל אירוע בודד, כגון מוות או יציאה של מכונה מכלל שימוש ללא אפשרות לתיקון. עם זאת, ייתכנו מצבים שבהם אירוע יכול להתרחש יותר מפעם אחת. מצבו הקליני של החולה יכול להחמיר מספר פעמים במשך חייו, ומכונה יכולה להתקלקל, לחזור לפעילות לאחר תיקון ואז להתקלקל שוב. קיימות הכללות למודלים של ניתוח הישרדות למקרים מעין אלו.

מושגי יסוד בניתוח הישרדות[עריכת קוד מקור | עריכה]

  • אירוע: זהו המושג היסודי של ניתוח הישרדות. אירוע הוא התרחשות מוגדרת היטב של התופעה בה אנו מתעניינים. לדוגמה מוות או החמרה במחלה.
  • תקופת התצפית: התקופה בה נערך מעקב אחרי הפרט או אוכלוסייה של פרטים כדי לבדוק האם מתרחש אירוע. לדוגמה, בניסוי קליני להערכת יעילות טיפול מסוים לטרשת נפוצה, מתעניינים במשך הזמן העובר מתחילת הטיפול עד להתרחשות התקף. בדרך כלל מגבילים את משך הניסוי הקליני בזמן, למשל מחליטים לעקוב אחרי החולים במשך שנתיים בלמד לאחר תחילת הטיפול, כלומר תקופת התצפית היא שנתיים.
  • זמן או משך הזמן (מסומן בדרך כלל באות ): משך הזמן העובר מתחילת התצפית ועד המוקדם מבין: מועד התרחשות האירוע, סוף תקופת התצפית, או הפסקת התצפית לפני סיום תקופת התצפית מסיבה כלשהי. לדוגמה: חולה המשתתף בניסוי קליני שמשכו שנתיים יכול להחליט לפרוש מהניסוי בכל עת. אם פרש מהניסוי אחרי חצי שנה, למשל, וזאת בטרם התרחשות האירוע, אז הזמן של אותו חולה הוא חצי שנה.
  • קטימה / תצפית קטומה: אם תקופת התצפית הסתיימה עבור פרט מסוים לפני התרחשות האירוע, נאמר כי התצפית היא קטומה. אנו יודעים בוודאות כי האירוע לא התרחש בזמן תקופת התצפית, אך לא יודעים אם הוא יתרחש בעתיד ואם כן מתי.
  • פונקציית ההישרדות : ההסתברות כי הזמן שעבר עד התרחשות האירוע גדול מ-. פורמלית, , כאשר היא פונקציית ההתפלגות של .
  • פונקציית הסיכון (hazard function), המסומנת בדרך כלל ב-, מבטאת את הסיכון הנקודתי להתרחשות אירוע בזמן , והיא מתקבלת כאשר מחשבים את ההסתברות המותנה להתרחשות אירוע במרווח זמן מסוים כאשר נתון כי האירוע עדיין לא התרחש, ומשאיפים את גודל מרווח הזמן ל-0:
    ,

כאשר היא פונקציית הצפיפות של .

יש לשים לב כי הסיכון אינו הסתברות, וערכו יכול להיות גדול מ-1.

גישות נפוצות לניתוח השרדות[עריכת קוד מקור | עריכה]

לוח חיים[עריכת קוד מקור | עריכה]

לוח חיים (או לוח תמותה, תלוי בהקשר) הוא טבלה תיאורית של נתוני ההישרדות. לכל נקודת זמן או מרווח זמן נתונים:

  • מספר הפרטים באוכלוסייה שנמצאו בסיכון באותה נקודת זמן. גודל זה הוא מספר הפרטים שלא נצפה כי הם חוו אירוע עד נקודת זמן זו, בין אם הם חוו אירוע בנקודת זמן מאוחרת יותר ובין אם התצפית נקטמה.
  • מספר הפרטים שחוו את האירוע בנקודת זמן זו.

משני נתונים אלה אפשר לחשב אמדן לערך פונקציית ההישרדות באותה נקודת זמן. על ידי שימוש בהתפלגות הבינומית ניתן לחשב רווח סמך לאמדן זה.

עקומת קפלן-מאייר[עריכת קוד מקור | עריכה]

עקומת קפלן-מאייר היא קירוב אפרמטרי לפונקציית ההישרדות. האמדן נתון על ידי הנוסחה:

כאשר

  • היא נקודת זמן בה התרחש לפחות אירוע אחד.
  • הוא מספר האירועים שהתרחשו בנקודת הזמן .
  • הוא מספר הפרטים באוכלוסייה ששרדו (כלומר לא חוו אירוע) עד זמן .

קפלן ומאייר הוכיחו כי אמד זה הוא אמד נראות מקסימלית עבור פונקציית ההישרדות[1].

מבחן לוג הדרגות (log rank test)[עריכת קוד מקור | עריכה]

זהו מבחן סטטיסטי א-פרמטרי לבדיקת ההשערה כי אין הבדל בין פונקציות ההשרדות של שתי אוכלוסיות בלתי תלויות. מבחן זה נקרא לעיתים בשם מבחן מאנטל-קוקס. התפלגותו האסימפטוטית של סטטיסטי המבחן היא התפלגות חי בריבוע כאשר מספר דרגות החופש שווה למספר האוכלוסיות פחות 1.

רגרסיית הישרדות פרמטרית[עריכת קוד מקור | עריכה]

זהו מודל רגרסיה פרמטרי המקשר בין משך הזמן (או פונקציה שלו) ובין משתנים מסבירים. פורמלית:

כאשר

  • היא פונקציה מונוטונית של
  • הם משתנים מסבירים.
  • הם מקדמי הרגרסיה.
  • ל- יש התפלגות המקבלת ערכים אי שליליים.
  • הוא מקדם מישקול (scaling) התלוי בהתפלגות של .

אמידת הפרמטרים נעשית על ידי שיטת הנראות המקסימלית.

מודל הסיכונים הפרופורציונליים (מודל קוקס)[עריכת קוד מקור | עריכה]

זהו מודל רגרסיה אפרמטרי המקשר בין פונקציית הסיכון ובין משתנים מסבירים. בעוד שעקומת קפלן מאייר ומבחן לוג הדרגות מתאימים למצב בו יש משתנה קטגורי יחיד המשפיע על פונקציית הסיכון (כגון קבוצת טיפול וקבוצת ביקורת, או מעשנים ולא מעשנים), מודל קוקס מתאים גם למצבים בהם יש יותר ממשתנה אחד המשפיע על ערך פונקציית הסיכון, ומשתנים אלה אינם מוגבלים להיות משתנים קטגוריים, אלא יכולים להיות משתנים בכל סולם מדידה. המודל הוצג על ידי סיר דויד קוקס בשנת[2]1972, והמאמר בו הוא הוצג נמנה עם 100 המאמרים המצוטטים ביותר בספרות המדעית.

ההגדרה הפורמלית של המודל היא

כאשר

  • הם משתנים מסבירים.
  • הוא הסיכון בנקודת הזמן בהינתן .
  • הוא הסיכון הבסיסי (הבלתי מותנה) בנקודת הזמן .
  • הם מקדמי הרגרסיה.

המודל אינו מניח כל הנחה התפלגותית לגבי הזמן .עם זאת, המודל מניח כי המשתנים המסבירים אינם משתנים עם הזמן. המודל אינו אומד ישירות את פונקציית הסיכון אלא את לוג יחסי הסיכונים, כלומר את . מכאן ש- הוא יחס הסיכונים (hazard ratio)של המשתנה המסביר בהינתן שאר המשתנים המסבירים. אמידת הפרמטרים נעשית בשיטת הנראות המקסימלית החלקית.

גישות נוספות[עריכת קוד מקור | עריכה]

גישות אפשריות נוספות לניתוח נתוני השרדות כוללות את מודל הסיכונים המצטברים, מודלים בייסיאניים ומודלים של למידת מכונה. כמו כן ישנן הרחבות למודלים שהוזכרו כאן למקרים בהם מופרות חלק מההנחות.

ישנם מצבים בהם אירוע יכול להתרחש בצורות שונות (למשל אדם מעשן נמצא בסיכון גבוה לגם לחלות בסרטן וגם למחלת לב. סיבת המוות יכולה להיות הסרטן או מחלת הלב, אך לא שתי המחלות יחד). המודל המתאים לניתוח הנתונים במצבים כאלה הוא מודל הסיכונים המתחרים.

דוגמה[עריכת קוד מקור | עריכה]

בדוגמה זו נשתמש בקובץ הנתונים lung המצורף לחבילת[3]survival של תוכנת R. הניתוחים המוצגים בוצעו על ידי פונקציות מחבילה זו.

יש להדגיש כי הדוגמה ממחישה את האופן בו מתבצעים הניתוחים השונים ומסבירה כיצד לפרט את התוצאות, אך אין זו דוגמה לתהליך ניתוח מסודר של נתוני הישרדות.

הנתונים[עריכת קוד מקור | עריכה]

בקובץ lung יש נתונים אודות 228 חולי סרטן הריאה. הנתונים כוללים את מין וגיל הנבדקים, וכן נתונים נוספים אודות מצבם התפקודי והתזונתי של החולים[4]. כן נתון משך הזמן בימים שעבר ממועד איסוף הנתונים (תחילת התצפית) ועד התרחשות אירוע מוות או סיום התצפית, ומשתנה המציין האם התצפית היא מלאה או קטומה. לצורך הדוגמה נשתמש בנתוני המין והגיל בלבד. להלן חלק מהנתונים:

   time status age sex
1   306      2  74   1
2   455      2  68   1
3  1010      1  56   1
4   210      2  57   1
5   883      2  60   1
6  1022      1  74   1
7   310      2  68   2
8   361      2  71   2
9   218      2  53   1
10  166      2  61   1

Sex=1 מציין גבר ו-sex=2 מציין אשה. Status=1 מציין תצפית קטומה ו-status=2 מציין התרחשות אירוע מוות.

מתוך 228 חולים, 165 נפטרו במהלך תקופת התצפית.

חציון זמן ההישרדות[עריכת קוד מקור | עריכה]

מכיוון שאנו איננו יודעים את משך הזמן עד המוות של החולים שלא נפטרו אי אפשר לאמוד את הזמן הממוצע עד המוות, אבל אפשר לאמוד את משך הזמן החציוני בעזרת אמדן קפלן-מאייר לפונקציית ההישרדות. בעזרת הפונקציה suvrfit של R עולה כי משך הזמן החציוני עד למוות באוכלוסייה שווה ל-310 ימים. חישוב נפרד לגברים ונשים מעלה כי משך הזמן החציוני עד למוות עבור גברים הוא 270 יום, ועבור נשים הוא 426 ימים.

 > # median estimation
 > fit=survfit(Surv(lung$time, lung$status) ~ 0, conf.type="plain")
 > fit_sex=survfit(Surv(time, status) ~ sex, data = lung)
 > fit
 Call: survfit(formula = Surv(lung$time, lung$status) ~ 0, conf.type = "plain")

       n  events  median 0.95LCL 0.95UCL
     228     165     310     284     361
 > fit_sex
 Call: survfit(formula = Surv(time, status) ~ sex, data = lung)

         n events median 0.95LCL 0.95UCL
 sex=1 138    112    270     212     310
 sex=2  90     53    426     348     550
 >

לוח חיים (או לוח תמותה)[עריכת קוד מקור | עריכה]

מוצגות פקודות R ו-6 השורות הראשונות של לוח התמותה (נתוני התמותה חושבו לכל החולים יחד):

> # life table lung
> fit= survfit(Surv(lung$time, lung$status) ~ 0, conf.type="plain")
> lt_lung=data.frame(summary(fit)[c(2:4,6, 8,10,9)])
> names(lt_lung)=c("time", "n_at_risk", "n_events",
+                  "survival", "StdErr", "ci_lower", "ci_upper")
> lt_lung[, 4:7]=round(lt_lung[, 4:7],4)
> head(lt_lung)
  time n_at_risk n_events survival StdErr ci_lower ci_upper
1    5       228        1   0.9956 0.0044   0.9870   1.0000
2   11       227        3   0.9825 0.0087   0.9654   0.9995
3   12       224        1   0.9781 0.0097   0.9591   0.9971
4   13       223        2   0.9693 0.0114   0.9469   0.9917
5   15       221        1   0.9649 0.0122   0.9410   0.9888
6   26       220        1   0.9605 0.0129   0.9353   0.9858
>

מהשורה הראשונה של הלוח ניתן ללמוד כי: • ביום החמישי של תקופת המעקב היו 228 חולים בסיכון • חולה אחד מת ביום החמישי • ערך פונקציית ההשרדות עבור t=5 שווה ל-0.996. הערך חושב על ידי חלוקת 227 (מספר השורדים מעבר ליום ה-5) ב-228 (מספר החולים הכולל)

עקומת קפלן-מאייר[עריכת קוד מקור | עריכה]

ניתן להפיק את העקומה ב-R בעזרת הפקודות הבאות:

> plot(fit_sex, col=c("red", "blue"), axes=FALSE, lwd=2,
+      main="Lung Cancer Data",
+      xlab="Time (days)", ylab="S(t)")
> mtext("Kaplan-Meyer Curve")
> axis(1, at=200*(0:5))
> axis(2, at=0.2*(0:5))
> legend("topright",
+        col=c('red', 'blue'),
+        legend=c("Male", "Female"), lwd=2, box.col="white")
>

העקומה המתקבלת היא:

Lung cancer KM.jpg

ניתן לראות כי ערך פונקציית ההשרדות של הנשים גבוה מזה של הגברים ברוב הזמן. לדוגמה, ההסתברות כי אשה תשרוד יותר מ-400 ימים קרובה ל-0.6, בעוד עבור הגברים הסתברות זו היא בערך 0.3.

מבחן לוג הדרגות (log rank test)[עריכת קוד מקור | עריכה]

ביצוע המבחן ב-R:

> # log rank test
> survdiff(Surv(time, status) ~ sex, data = lung)
Call:
survdiff(formula = Surv(time, status) ~ sex, data = lung)

        N Observed Expected (O-E)^2/E (O-E)^2/V
sex=1 138      112     91.6      4.55      10.3
sex=2  90       53     73.4      5.68      10.3

 Chisq= 10.3  on 1 degrees of freedom, p= 0.00131

ערך שהתקבל הוא 10.3 וערך ה-p הוא 0.00131. בהנחה כי רמת המובהקות שנקבעה מראש היא , ניתן לומר כי יש הבדל מובהק בין פונקציות ההישרדות של הגברים ושל הנשים.

רגרסיית השרדות פרמטרית[עריכת קוד מקור | עריכה]

נבצע רגרסיית הסתברות פרמטרית כאשר המשתנה המוסבר הוא הלוג של משך הזמן והמשתנים המסבירים הם מין וגיל. אנו מניחים כי לטעות יש התפלגות וויבול עם פרמטר scale השווה ל-1.

> fit_reg=survreg(Surv(log(time), status) ~ sex + age, data = lung, dist='weibull',scale=1)
> summary(fit_reg)
Call:
survreg(formula = Surv(log(time), status) ~ sex + age, data = lung,
    dist = "weibull", scale = 1)
              Value Std. Error     z        p
(Intercept)  2.2771    0.62944  3.62 0.000297
sex          0.3546    0.16759  2.12 0.034380
age         -0.0119    0.00888 -1.34 0.180112

Scale fixed at 1

Weibull distribution
Loglik(model)= -493.7   Loglik(intercept only)= -497.3
	Chisq= 7.15 on 2 degrees of freedom, p= 0.028
Number of Newton-Raphson Iterations: 3
n= 228

טיב ההתאמה של המודל לנתונים נבדק על ידי סטטיסטי של מבחן יחס הנראות (על פי משפט וילקס). ערכו הוא 7.15 עם שתי דרגות חופש, וערך ה-p הוא 0.028. בהנחה כי רמת המובהקות שנקבעה מראש היא , ניתן לומר כי יש הבדל מובהק בין המודל הכולל את המשתנים המסבירים והמודל הבסיסי שאינו כולל משתנים מסבירים. עם זאת, אנו רואים כי המקדם של משתנה המין שונה מ-0 באופן מובהק סטטיסטית, אך המקדם של משתנה הגיל אינו שונה מאפס באופן מובהק.

מודל הסיכונים הפרופורציונליים (מודל קוקס)[עריכת קוד מקור | עריכה]

נבצע הרצה של המודל עם משתנה מסביר אחד - משתנה המין:

> # cox ph model
> fit_cox=coxph(Surv(time, status) ~ sex, lung)
> summary(fit_cox)
Call:
coxph(formula = Surv(time, status) ~ sex, data = lung)

  n= 228, number of events= 165

       coef exp(coef) se(coef)      z Pr(>|z|)
sex -0.5310    0.5880   0.1672 -3.176  0.00149 **
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

    exp(coef) exp(-coef) lower .95 upper .95
sex     0.588      1.701    0.4237     0.816

Concordance= 0.579  (se = 0.022 )
Rsquare= 0.046   (max possible= 0.999 )
Likelihood ratio test= 10.63  on 1 df,   p=0.001111
Wald test            = 10.09  on 1 df,   p=0.001491
Score (logrank) test = 10.33  on 1 df,   p=0.001312

בתחתית הפלט יש מספר מבחנים לבדיקת טיב ההתאמה של המודל לנתונים בהשוואה למודל ללא משתנים מסבירים: מבחן התאימות (Concordance), מבחן יחס הנראות, מבחן ואלד ומבחן לוג הדרגות. בכל המבחנים התקבלו תוצאות מובהקות (ברמת מובהקות של ). כן נתון ערך המתאם והוא שווה ל-0.046. ערך זה נמוך למדי, ורומז על כך שייתכן כי ישנם עוד משתנים מסבירים היכולים להסביר את השונות בין זמני ההישרדות. ערכו של מקדם משנה המין הוא 0.531-, וערך זה מובהק סטטיסטית ברמת מובהקות של . מאחר שגברים מקודדים בקובץ הנתונים על ידי המספר 1 ונשים על ידי המספר 2, נובע כי כשאר ערך המין משתנה מ-1 ל-2, כלומר כאשר הסיכון מחושב עבור אישה ולא עבור גבר, הסיכון הכללי קטן. כאשר מפעילים את הפונקציה המעריכית על מקדם זה, אנו מקבלים כי יחס הסיכונים הוא 0.588. פירוש הדבר הוא כי הסיכון למוות של נשים נמוך בג-40% מזה של הגברים בכל נקודת זמן. רווח סמך ברמת סמך של 95% ליחס הסיכונים הוא (0.4237-0.0816) ואינו מכיל בתוכו את 1, וזה מתיישב עם הערך המובהק של מקדם הגיל ברגרסיה.

ניתן להפיק גרף של פונקציות ההישרדות שנאמדו על ידי המודל בעזרת הפקודות הבאות ב-R:

> plot(survfit(fit_cox, newdata=data.frame(sex=c(1,2))),
+      col=c("red", "blue"), axes=FALSE, lwd=2,
+      main="Lung Cancer Data - Cox Model",
+      xlab = "Days", ylab="Survival")
> mtext("Survival Curves by Sex")
> axis(1, at=200*(0:5))
> axis(2, at=0.2*(0:5))
> legend("topright",
+        col=c('red', 'blue'),
+        legend=c("Male", "Female"), lwd=2, box.col="white")
>

העקומה המתקבלת היא:

Lung cancer cox.jpg

שוב ניתן לראות כי ערכי פונקציית ההשרדות של הגברים גבוהים מאלה של הגברים. החל מנקודה מסוימת שתי העקומות מקבילות זו לזו, וזאת כתוצאה של הנחת הסיכונים הפרופורציונליים.

לקריאה נוספת[עריכת קוד מקור | עריכה]

  • Collett, David (2003). Modelling Survival Data in Medical Research (מהדורה Second). Boca Raton: Chapman & Hall/CRC. ISBN 1584883251. 
  • Elandt-Johnson, Regina; Johnson, Norman (1999). Survival Models and Data Analysis. New York: John Wiley & Sons. ISBN 0471349925. 
  • Kalbfleisch, J. D.; Prentice, Ross L. (2002). The statistical analysis of failure time data. New York: John Wiley & Sons. ISBN 047136357X. 
  • Lawless, Jerald F. (2003). Statistical Models and Methods for Lifetime Data (מהדורה שנייה). Hoboken: John Wiley and Sons. ISBN 0471372153. 
  • Rausand, M.; Hoyland, A. (2004). System Reliability Theory: Models, Statistical Methods, and Applications. Hoboken: John Wiley & Sons. ISBN 047147133X. 

קישורים חיצוניים[עריכת קוד מקור | עריכה]

ויקישיתוף מדיה וקבצים בנושא ניתוח הישרדות בוויקישיתוף

הערות שוליים[עריכת קוד מקור | עריכה]

  1. ^ Kaplan, E. L.; Meier, P., Nonparametric estimation from incomplete observations, J. Amer. Statist. Assoc. 53 (282), 1958, עמ' 457–481 doi: doi:10.2307/2281868
  2. ^ Cox, David R, Regression Models and Life-Tables, Journal of the Royal Statistical Society, Series B 34 (2), עמ' 187–220
  3. ^ Therneau T., Lumley T, Package ‘survival’, 2017
  4. ^ Loprinzi CL. Laurie JA. Wieand HS. Krook JE. Novotny PJ. Kugler JW. Bartel J. Law M. Bateman M. Klatt NE. et al., Prospective evaluation of prognostic variables from patient-completed questionnaires. North Central Cancer Treatment Group., Journal of Clinical Oncology, 3 12, 1994, עמ' 601-7