רגרסיה לוגיסטית בינארית

ניבוי תוצאה דו-ערכית (השתתף/לא, נרפא/לא, הצביע/לא) ממנבא אחד או יותר, רציפים או קטגוריאליים: יחסי סיכויים עם רווחי סמך, מבחן יחס הנראות למודל, R² מדומים, מבחן Hosmer-Lemeshow, לוח סיווג עם רגישות וסגוליות, ואבחון – רב-קוליניאריות, ליניאריות הלוגיט ושאריות.

מחשבון

טעינת הנתונים

גוררים לכאן קובץ אקסל או קובץ SPSS (.sav), או לוחצים לבחירה
בתבנית התקנית של האתר: שורה = נבדק, עמודה = משתנה, שורת כותרות ראשונה. גם CSV מתקבל.
אם הקובץ כולל גיליון "מקרא" – תוויות הערכים (0 = לא, 1 = כן) יופיעו בלוחות, ומשתנה "נומינלי" עם שלוש קטגוריות ומעלה יסומן אוטומטית כקטגוריאלי (קידוד דמה).
רוצים רק להתנסות? הורידו קובץ נתונים לדוגמה (320 תושבים: השתתפות בפעילות קהילתית מוותק, תחושת שייכות, גיל, מגדר וסוג יישוב): דוגמה בעברית דוגמה באנגלית
או

מדביקים עמודות ישירות מהגיליון (כולל שורת הכותרות) – מסמנים באקסל, מעתיקים, ומדביקים כאן:

A
B
C
D
E
F
אפשר גם פשוט להדביק – הנתונים ייטענו ויוצגו אוטומטית.

בחירת המשתנים

מדריך

מתי משתמשים ברגרסיה לוגיסטית?

כשהתוצאה היא קטגוריה – השתתף או לא, נרפא או לא, הצביע או לא – ורוצים לנבא אותה ממנבאים, רציפים או קטגוריאליים, ולדעת מה תרומתו של כל מנבא בהינתן האחרים (Field, 2024, Section 20.2; Pallant, 2020, Chapter 14). זו הרחבה של המודל הליניארי לתוצאה דו-ערכית: מבחן חי-בריבוע (עמוד חי-בריבוע לאי-תלות) בודק קשר בין שני משתנים קטגוריאליים; הרגרסיה הלוגיסטית מנבאת את התוצאה מכמה מנבאים יחד, וגם מרציפים. לתוצאה עם שלוש קטגוריות ומעלה – רגרסיה לוגיסטית רב-קטגורית (Multinomial), שאינה בעמוד; לתוצאה רציפה – רגרסיה ליניארית.

המודל: מהסתברות ללוג-סיכויים

המודל הליניארי מנבא ערך; כאן הערך הוא הסתברות, וקשר ליניארי בינה למנבא היה נותן ערכים מחוץ ל-0-1 (תרשים 1). הפתרון: מנבאים לא את ההסתברות אלא את לוג-הסיכויים שלה – ln(p/(1 − p)) = b₀ + b₁X₁ + … + bₙXₙ (Field, 2024, Equation 20.13) – ומקבלים בחזרה את ההסתברות דרך p = 1/(1 + e−(b₀ + b₁X₁ + …)) (משוואה 20.5). ה"סיכויים" (odds) הם היחס בין ההסתברות שכן להסתברות שלא: הסתברות .75 היא סיכויים 3 (3:1). הפרמטרים נאמדים בנראות מקסימלית – החיפוש האיטרטיבי אחר הערכים שמניבים את ההסתברות הגבוהה ביותר לנתונים שנצפו (Field, סעיף 2.7 וטיפ 20.1) – ולכן אין כאן "נוסחה סגורה" אלא תהליך שמתכנס, ולעיתים אינו מתכנס (סעיף ההנחות).

תרשים 1. למה לא רגרסיה ליניארית: העקומה הלוגיסטית נשארת בין 0 ל-1

ציר אופקי – מנבא (למשל אחוז הצלחה בעבר, Field, 2024, סעיף 20.3.1); ציר אנכי – ההסתברות לתוצאה. הקו הרציף – המודל הלוגיסטי p = 1/(1 + e−(−6 + .12x)); הקו המקווקו – קו ישר באותו שיפוע באמצע

020406080100 0.25.5.751.0 המודל הלוגיסטי קו ישר – יוצא מ-0-1

הערה. מחושב מהנוסחה, לא מדומה. הסתברות חייבת להישאר בין 0 ל-1, וקשר ליניארי בין מנבא להסתברות מפר זאת בקצוות; המודל הלוגיסטי פותר זאת בכך שהחלק הליניארי מנבא את לוג-הסיכויים (logit) ולא את ההסתברות עצמה (Field, 2024, Sections 20.3.1-20.3.2, Equations 20.5 and 20.13) – והתוצאה היא עקומת S. השיפוע בעקומה אינו קבוע: אותו B משנה את ההסתברות הרבה באמצע ומעט בקצוות – ולכן מפרשים יחסי סיכויים, לא "שינוי בהסתברות".

יחס הסיכויים – Exp(B)

המקדם B הוא השינוי בלוג-הסיכויים לעלייה של יחידה במנבא, כשהשאר קבועים – ו"אף אחד לא מבין מה זה שינוי בלוג-סיכויים. אף אחד" (Field, 2024, Section 20.3.3). לכן מדווחים את eB, יחס הסיכויים: היחס בין הסיכויים אחרי עלייה של יחידה במנבא לסיכויים לפניה (משוואה 20.17). OR = 1 – אין קשר; OR > 1 – הסיכויים עולים עם המנבא; OR < 1 – יורדים. הדוגמה של Field (סעיף 20.6.3, תיבה 20.1): טיפול לעומת אי-טיפול, B = 1.229, OR = e1.229 = 3.42 – סיכויי ההחלמה פי 3.42 אצל מי שטופל; החישוב הישיר: סיכויי ההחלמה בלי טיפול 24/32 = .75, עם טיפול 41/16 = 2.56, והיחס 3.42. Pallant (2020, פרק 14): למנבא רציף OR הוא לכל יחידה (שנה, שעה, נקודה בסולם – ולכן תלוי ביחידה); למנבא קטגוריאלי – הקטגוריה לעומת קטגוריית הבסיס; ו-OR קטן מ-1 נוח להפוך (1/OR) – "לכל שעת שינה פחות הסיכויים גדלים פי 1.56" – ואז הופכים גם את רווח הסמך. רווח הסמך ל-OR: אם הוא אינו כולל 1, הכיוון של הקשר מובהק (Field, Section 20.6.3); אם הוא כולל 1, ייתכן שבאוכלוסייה הכיוון הפוך.

מובהקות המודל, R² מדומים ו-Hosmer-Lemeshow

לוג-הנראות והסטייה. טיב ההתאמה נמדד בלוג-הנראות (Field, 2024, Equation 20.19) – מקבילו של סכום ריבועי השאריות: כמה מידע נשאר לא מוסבר. נוח יותר לעבוד עם הסטייה −2LL (deviance; Equation 20.20), כי היא מתפלגת חי-בריבוע. מבחן המודל (משוואה 20.21): χ² = (−2LL)ריק − (−2LL)מודל, עם df = מספר המנבאים – האם המנבאים יחד משפרים על מודל שמנחש לכולם את הקטגוריה השכיחה. אצל Field: 154.084 − 144.158 = 9.926, p = .002. ב-SPSS זה Omnibus Tests of Model Coefficients (Pallant, 2020, פרק 14: "רוצים ערך מובהק"). Wald למנבא בודד (סעיף 20.3.4): z = B/SE, ש-SPSS מדפיס בריבוע; אבל כש-B גדול טעות התקן מתנפחת ו-Wald מקטין (Menard, 2002, as cited in Field) – מבחן יחס הנראות בהוספת המנבא (מודל בלי ומודל עם) אמין יותר. R² מדומים. אין R² אמיתי; Cox & Snell (משוואה 20.25) לעולם אינו מגיע ל-1, ו-Nagelkerke (משוואה 20.26) מתקן זאת – "מדדים מדומים" שאינם שיעור שונות מוסברת, אך מאפשרים להשוות מודלים על אותו מנובא (Pallant). אצל Field: .084 ו-.113 לאותו מודל. Hosmer-Lemeshow. מבחן טיב התאמה שמחלק את הנבדקים לעשר קבוצות לפי ההסתברות החזויה ומשווה נצפה לצפוי: כאן דווקא רוצים p מעל .05 – p נמוך אומר התאמה גרועה (Pallant, פרק 14: SPSS מכנה אותו "המבחן האמין ביותר" להתאמה). Field מזכיר אותו כאפשרות בלבד (סעיף 20.5.11). Gelman ו-Hill (2007, עמ' 100) נותנים כלל אצבע לסטייה: מנבא שהוא רעש בלבד מוריד את הסטייה ב-1 בממוצע, ומנבא אינפורמטיבי – ביותר מ-1; k מנבאים שנוספו צריכים להוריד אותה ביותר מ-k.

בניית המודל: הכנסה כפויה, היררכיה וחסכנות

העמוד מכניס את כל המנבאים שנבחרו בבלוק אחד – הכנסה כפויה (Enter), ברירת המחדל של SPSS ושל Pallant (2020, פרק 14). Field (2024, סעיף 20.3.8) מעדיף בנייה היררכית מונחית-תיאוריה: מתחילים מהמנבא העיקרי, מוסיפים בלוקים ובודקים בכל שלב אם −2LL ירד במובהק (ה-Block χ² בפלט SPSS) – ואם לא, חוזרים למודל הפשוט ("חסכנות": לא מכניסים מנבא בלי תועלת הסברית). בדוגמת הצלופח שלו, הוספת משך הבעיה שינתה את χ² ב-.002 (p = .964) והאינטראקציה ב-.061 (p = .805) – שתיהן נזרקו. באתר עושים זאת בשתי הרצות: מודל עם המנבאים הבסיסיים ומודל עם התוספת, וההפרש בין שני ה-χ² הוא מבחן התוספת עם df = מספר המנבאים שנוספו. שיטות צעד-אחר-צעד (Forward/Backward) – Pallant: "אינן מומלצות", כי הן מושפעות משונות מקרית; Field: לא לבדיקת תיאוריה, ואם בכל זאת – Backward עם קריטריון יחס הנראות. אינטראקציה במודל דורשת את שני האפקטים העיקריים שלה, גם אם אינם מובהקים (Field).

איך קוראים את הפלט?

לוח 1. קודם המודל כולו: χ² ו-p (Omnibus). לא מובהק – עוצרים, המנבאים אינם משפרים את הניחוש. מובהק – ממשיכים ל-R² של Nagelkerke (השוואה למודלים אחרים) ול-Hosmer-Lemeshow (p מעל .05 = אין ראיה להתאמה גרועה). לוח 2. לכל מנבא: הסימן של B אומר את הכיוון (Pallant: כשהכול מקודד 0 = לא, 1 = כן, B שלילי = המנבא מקטין את הסיכוי ל-1); p של Wald – האם התרומה הייחודית מובהקת; OR ורווח הסמך – הגודל. Pallant קוראת את הדוגמה שלה כך: "הסיכויים שאדם ידווח על בעיית שינה גבוהים פי 7.27 אצל מי שמתקשה להישאר ישן, כשהשאר קבועים"; ולשעות השינה OR = .64 – "לכל שעת שינה נוספת הסיכויים קטנים פי .64". במנבא קטגוריאלי עם שלוש קטגוריות ומעלה, שורת המשתנה כולו (Wald עם df = מספר הקטגוריות − 1) אומרת אם המשתנה תורם, והדמים אומרים איזו קטגוריה שונה מהבסיס. לוח 3. לוח הסיווג מול קו הבסיס (Block 0): אם 60% מהמדגם בקטגוריה אחת, סיווג נכון של 60% אינו הישג. Pallant מוסיפה את מדדי הרפואה – רגישות, סגוליות, ערך ניבוי חיובי ושלילי – והעמוד מחשב אותם בהערת הלוח. Field (סעיף 20.6.5) קורא גם את תרשים הסיווג: במודל טוב הנבדקים מתקבצים בקצוות, לא סביב .5. Gelman ו-Hill (2007, עמ' 99-100) מנסחים זאת כשיעור טעות: המודל הריק טועה ב-p או ב-1 − p (הנמוך שבהם), ו"שיעור טעות השווה לשיעור של המודל הריק הוא נורא"; אך שיעור הטעות אינו מבחין בין ניבוי של .6 ל-.9 – מודל שרוב נבדקיו קרובים לממוצע יכול להיות אינפורמטיבי מאוד בקצוות ועדיין לשפר את הסיווג הכולל במעט. לוח 4. האבחון – בסעיף הבא.

הנחות ובעיות

ליניאריות הלוגיט ואי-תלות. המודל מניח קשר ליניארי בין כל מנבא רציף ללוג-הסיכויים (Field, 2024, Section 20.4.1) – לא להסתברות. הבדיקה של Hosmer ואחרים (2013, as cited in Field, Section 20.7.3): מוסיפים למודל את האינטראקציה של כל מנבא רציף עם הלוג של עצמו; אינטראקציה מובהקת = ההנחה מופרת. העמוד עושה זאת אוטומטית למנבאים רציפים חיוביים (לוח 4). והשאריות בלתי-תלויות – אין למדוד את אותו אדם פעמיים.

מידע חלקי מהמנבאים. אם צירוף קטגוריות מסוים ריק (מעשנים שאוכלים עגבניות, בדוגמה של Field, סעיף 20.4.2), למודל אין על מה לבסס את ההסתברות שם – וגם למנבאים רציפים: "בת 80, חרדה מאוד, בודהיסטית, שמאלית" נדירה גם במדגם של אלף. הסימן: טעויות תקן ענקיות. Field: חוקרים קפדניים בודקים לוחות הצלבה של כל המנבאים הקטגוריאליים לפני המודל (עם התנאי של השכיחויות הצפויות מעמוד חי-בריבוע); "מי שלא עושה לא זאת ולא זאת – שיצפה לצרות". הפרדה מושלמת (סעיף 20.4.3): כשמנבא או צירוף מנבאים חוזה את התוצאה במדויק – חתולים לעומת פורצים לפי משקל – האומדים בורחים לאינסוף, טעויות התקן מתפוצצות, והתוכנה עלולה "להיכנע בשקט ולהגיש תוצאה שגויה לגמרי". העמוד מזהה אי-התכנסות ומקדמים קיצוניים ומתריע; הפתרון – מודל פשוט יותר, איחוד קטגוריות, או עוד נתונים. גודל המדגם (Pallant, 2020, Chapter 14): מדגם קטן עם הרבה מנבאים – בעיות התכנסות, במיוחד עם קטגוריות דלילות; מריצים תיאוריים לכל מנבא ומאחדים או מסירים קטגוריות דלות.

רב-קוליניאריות. SPSS אינו מדפיס אבחון קוליניאריות ברגרסיה לוגיסטית ("מה שיוצר אשליה שזה לא חשוב" – Field, סעיף 20.7.4); מריצים רגרסיה ליניארית על אותם משתנים וקוראים רק את Tolerance ו-VIF: Tolerance מתחת ל-.1 או VIF מעל 10 – בעיה (Menard, 2002, as cited in Field; Pallant). העמוד מחשב את ה-VIF ישירות (לוח 4). חריגים ומקרים משפיעים (Field, Section 20.6.7; Pallant): השאריות המתוקננות (ZResid) – לא יותר מ-5% מעל 2, לא יותר מ-1% מעל 2.5, ומעל 3 חריג; Pallant מדפיסה את המקרים מעל 2 (Casewise List) ומציעה לבדוק אותם – אולי קבוצה שהמודל אינו מתאים לה (עובדי משמרות). Field: חריג אינו סיבה למחוק – אלא לבדוק למה; מוחקים רק עם סיבה מתועדת. מדדי ההשפעה (Cook, DFBeta, leverage) אינם בעמוד.

מה העמוד אינו מחשב. בלוקים היררכיים (מריצים פעמיים ומחסרים χ²); שיטות צעד-אחר-צעד; אינטראקציות בין מנבאים (Field, Section 20.7); bootstrap למקדמים (סעיף 20.5.12); מדדי השפעה; ה-R של SPSS ו-R²L של Hosmer-Lemeshow (סעיף 20.3.7); רגרסיה לוגיסטית רב-קטגורית; אומדן בייסיאני/נראות מוענשת להפרדה (Gelman ו-Hill, בסעיף הבא).

שלוש תוספות מ-Gelman ו-Hill: חלקי ארבע, שאריות מקובצות והפרדה

Gelman ו-Hill (2007, פרק 5) מלמדים רגרסיה לוגיסטית מכיוון אחר – לא פלט SPSS אלא הבנת המודל – ושלושה מהכלים שלהם נכנסו לעמוד. כלל "חלקי ארבע" (עמ' 82). עקומת הלוגיסטיקה תלולה ביותר במרכזה, כש-p = .5, ושם השיפוע שלה הוא בדיוק B/4; לכן B/4 הוא החסם העליון לשינוי בהסתברות המתאים לעלייה של יחידה במנבא – קירוב סביר כשההסתברויות בנתונים קרובות ל-.5, וחסם בלבד כשהן קרובות ל-0 או ל-1. בדוגמה שלהם, B = 0.33 להכנסה (בסולם 1-5) נותן 0.33/4 = .08: קטגוריית הכנסה נוספת מעלה את ההסתברות להצביע לבוש בלא יותר מ-8 נקודות אחוז – והנגזרת בממוצע הנתונים (עמ' 81-82: "הערכה בממוצע הנתונים ובסביבתו") יוצאת .13, קרוב. לוח 2 מדפיס את B/4 לכל מנבא, והערת הלוח – את השיפוע בממוצע הנתונים, B·p̂(1 − p̂). Gelman ו-Hill מודים ש"מושג הסיכויים קשה להבנה, ויחסי סיכויים סתומים עוד יותר", ולכן מעדיפים לפרש בסקלת ההסתברות המקורית (עמ' 83); באתר מדווחים OR (Field; Pallant; APA) ומוסיפים את B/4 כתרגום להסתברות. עוד כלל שלהם (עמ' 83): מקדם שרחוק מאפס ביותר משתי טעויות תקן מובהק – זהו מבחן Wald של לוח 2 בלבוש אחר.

שאריות מקובצות (עמ' 97-98, איורים 5.13-5.14). השארית ברגרסיה לוגיסטית היא y − p̂, וכיוון ש-y הוא 0 או 1 היא בדידה: עבור p̂ = .7 היא −.7 או +.3; תרשים של שאריות גולמיות מראה שני פסים ואינו מלמד כלום. הפתרון: מחלקים את הנבדקים לקבוצות בגודל שווה לפי ההסתברות החזויה, ולכל קבוצה מציירים את ממוצע השאריות מול ממוצע ההסתברות. אם המודל נכון, כ-95% מהנקודות אמורות ליפול בתוך הגבולות ±2√(p̄(1 − p̄)/n) (n – מספר הנבדקים בקבוצה), ואין דפוס. בדוגמת הבארות בבנגלדש שלהם (N = 3,020, 40 קבוצות של 75) נקודה אחת מ-40 חרגה – "לא הפתעה". אותו תרשים לפי מנבא רציף (איור 5.14) חושף מה שהתרשים הכולל מסתיר: לפי רמת הארסן נמצאה קבוצה תחתונה שבה רק 32% החליפו באר לעומת 49% שחזה המודל, ודפוס עולה-ויורד לאורך הציר – "אות למודלאי מנוסה" לקחת לוגריתם של המנבא (עמ' 98), או להוסיף מונח ריבועי. העמוד מצייר את תרשים השאריות המקובצות לפי ההסתברות החזויה ולפי כל מנבא רציף (בורר בתרשים), ב-√N קבוצות; לוח 4 סופר את הקבוצות שמחוץ לגבולות. ההשלמה למבחן Hosmer-Lemeshow: המבחן נותן p אחד, התרשים מראה איפה ההתאמה נכשלת.

הפרדה ואי-זיהוי (עמ' 104). שתי סיבות לכך שרגרסיה לוגיסטית "אינה מזוהה" – שהפרמטרים אינם ניתנים לאמידה מהנתונים: קוליניאריות, כמו ברגרסיה ליניארית; והפרדה, שמקורה בבדידות התוצאה. אם מנבא מיושר במלואו עם התוצאה – y = 1 לכל מי שמעל סף ו-y = 0 לכל מי שמתחתיו – האומד הטוב ביותר למקדם הוא אינסוף (איור 5.16: קו לוגיסטי בשיפוע אינסופי); וגם צירוף ליניארי של מנבאים המיושר עם התוצאה מזניק לפחות מקדם אחד לאינסוף. זו ההפרדה המושלמת של Field (סעיף 20.4.3), והסימן שלה זהה – מקדם עצום עם טעות תקן עצומה. הפתרון של Gelman ו-Hill שונה מזה של Field: במקום לפשט את המודל, אומדן בייסיאני או נראות מוענשת (bayesglm בחבילת arm ב-R, או brlr) ש"מספק מעט מידע על כל המקדמים, גם אלה שאינם מזוהים מהנתונים לבדם", ומחזיר אומדן סופי. העמוד בודק לכל מנבא אם הוא מיושר במלואו עם התוצאה, או אם באחד מערכיו כל הנבדקים באותה קטגוריה (תא ריק), ומתריע (לוח 4); הוא אינו אומד בייסיאנית – סעיף R מדגים.

ואיך עושים זאת ב-SPSS?

Analyze › Regression › Binary Logistic… (Pallant, 2020, Chapter 14; Field, 2024, Section 20.5.5): המנובא ל-Dependent, המנבאים ל-Covariates, Method: Enter. בכפתור Categorical… – המנבאים הקטגוריאליים, Contrast: Indicator, Reference Category: First ולחיצה על Change (Pallant; Field מדגים גם Last – לפי הקידוד שלכם). בכפתור Options…: Classification plots, Hosmer-Lemeshow goodness-of-fit, Casewise listing of residuals, CI for exp(B) ו-Iteration history (בשביל −2LL של המודל הריק). הסינטקס של Pallant, בתוספת ההיסטוריה:

LOGISTIC REGRESSION VARIABLES outcome
  /METHOD=ENTER sex age fallsleep staysleep hrswknight
  /CONTRAST(sex)=Indicator(1)
  /CONTRAST(fallsleep)=Indicator(1)
  /CONTRAST(staysleep)=Indicator(1)
  /CLASSPLOT
  /CASEWISE OUTLIER(2)
  /PRINT=GOODFIT CI(95) ITER(1)
  /CRITERIA=PIN(.05) POUT(.10) ITERATE(20) CUT(.5).

קידוד המנובא: SPSS מקודד פנימית את הערך הנמוך 0 ואת הגבוה 1 (Dependent Variable Encoding); אם הקטגוריה שרוצים לנבא היא דווקא הנמוכה, יוצרים משתנה 1/0 – הסינטקס של העמוד עושה זאת ב-COMPUTE כשצריך. קריאת הפלט: Block 0 – לוח הסיווג של המודל הריק (קו הבסיס) ו-Iteration History עם −2LL הראשוני; Block 1 – Omnibus Tests of Model Coefficients (שורת Model = χ² של לוח 1; שורת Block = התוספת של הבלוק האחרון), Model Summary (−2LL, Cox & Snell, Nagelkerke), Hosmer and Lemeshow Test, Classification Table = לוח 3, Variables in the Equation = לוח 2 (B, S.E., Wald, df, Sig., Exp(B), 95% CI), Casewise List – הנבדקים עם ZResid מעל 2 = לוח 4. VIF: Analyze › Regression › Linear… עם אותם משתנים ו-Statistics › Collinearity diagnostics – קוראים רק את העמודות Tolerance ו-VIF (Field, Section 20.7.4). שאריות מקובצות: SPSS אינו מצייר אותן; /SAVE=PRED RESID שומר את ההסתברות החזויה ואת השארית, RANK /NTILES מקבץ ו-MEANS מחשב ממוצעים לכל קבוצה – הגבולות והתרשים בעמוד. כפתור "הורדת סינטקס SPSS" בפלט מייצר את כל השלבים – טעינה, מילון, קידוד המנובא אם צריך, LOGISTIC REGRESSION עם /SAVE, REGRESSION ל-VIF, קיבוץ השאריות, ובדיקת ליניאריות הלוגיט.

ואיך עושים זאת ב-R?

glm(…, family = binomial) ב-R הבסיסי; מנבא קטגוריאלי כ-factor מקבל קידוד דמה עם הרמה הראשונה כבסיס – כמו Indicator(first). exp(coef) ו-exp(confint.default) נותנים את OR ורווח הסמך על סקלת הלוג (כמו SPSS; confint בלי .default נותן רווח פרופיל-נראות, שונה מעט); hoslem.test מחבילת ResourceSelection – מבחן Hosmer-Lemeshow; binnedplot ו-bayesglm מחבילת arm של Gelman ו-Hill – תרשים השאריות המקובצות ואומדן בייסיאני להפרדה. הסקריפט הורץ כלשונו על קובץ הדוגמה (ב-Rscript, עם png() סביב התרשים). כלל האתר לעברית ב-R: הקובץ נשמר ב-UTF-8, כל שורת הערה מתחילה במילה עברית, ושמות בעברית דורשים סביבת UTF-8 (ב-Windows: R 4.2 ומעלה, או Sys.setlocale('LC_ALL', 'Hebrew')).

# רגרסיה לוגיסטית בינארית – פרופסור סטאט. קובץ זה נשמר ב-UTF-8; כל שורת הערה מתחילה במילה עברית
library(readxl)             # קריאת אקסל
library(ResourceSelection)  # hoslem.test
library(arm)                # binnedplot, bayesglm (Gelman & Hill)

# טעינה: התבנית התקנית – שורה = נבדק, עמודה = משתנה; הגיליון "נתונים"
d <- read_excel("C:/Rdata/DATA_logistic_example_heb.xlsx", sheet = "נתונים")
d$"סוג_יישוב" <- factor(d$"סוג_יישוב")        # מנבא קטגוריאלי – קידוד דמה, הקטגוריה הראשונה (1 = עיר) בסיס

# המודל: השתתפות (0/1) מוותק, תחושת שייכות, גיל, מגדר וסוג יישוב; מחיקה רשימתית כמו ב-SPSS
m <- glm(השתתפות ~ ותק_בקהילה + תחושת_שייכות + גיל + מגדר + סוג_יישוב, data = d, family = binomial)
summary(m)$coefficients          # B, טעות תקן, z (Wald ב-SPSS = z²), p
exp(coef(m))                     # יחסי הסיכויים Exp(B): ותק 1.11, שייכות 2.81, קיבוץ לעומת עיר 2.22
exp(confint.default(m))          # רווח סמך 95% ל-OR (על סקלת הלוג, כמו SPSS)
nobs(m)                          # N = 294

# המודל מול מודל ריק: χ² של יחס הנראות, ו-R² מדומים
mf <- model.frame(m); m0 <- glm(השתתפות ~ 1, data = mf, family = binomial)   # מודל ריק על אותם 294 נבדקים
chi2 <- m0$deviance - m$deviance; df <- m0$df.residual - m$df.residual
c(chi2 = chi2, df = df, p = pchisq(chi2, df, lower.tail = FALSE))       # 59.13, 6, p < .001
n <- nobs(m); cs <- 1 - exp(chi2 / -n); nag <- cs / (1 - exp(-m0$deviance / n))
c(cox_snell = cs, nagelkerke = nag)                                    # .182, .243

# לוח הסיווג בסף .5
table(observed = m$y, predicted = as.integer(fitted(m) >= 0.5))     # 99 47 / 50 98 – 67.0% נכון

# מבחן Hosmer-Lemeshow (10 קבוצות) – hoslem.test מקבץ לפי אחוזוני p (quantile) ולכן יכול להיות שונה מעט מהעמוד ומ-SPSS כשיש ערכים חוזרים
hoslem.test(m$y, fitted(m), g = 10)                                    # 15.53, df 8, p = .050 (העמוד: 15.05, p = .058)

# בדיקת רב-קוליניאריות: VIF מרגרסיה ליניארית על אותם מנבאים (Field, 2024, סעיף 20.7.4)
lm_vif <- lm(השתתפות ~ ותק_בקהילה + תחושת_שייכות + גיל + מגדר + סוג_יישוב, data = d)
1 / (1 - summary(lm(ותק_בקהילה ~ תחושת_שייכות + גיל + מגדר + סוג_יישוב, data = model.frame(lm_vif)))$r.squared)   # VIF של ותק = 1.01

# שאריות מקובצות (Gelman & Hill, 2007, עמ' 97-98) – binnedplot מחבילת arm; nclass = מספר הקבוצות (העמוד: √N = 17)
binnedplot(fitted(m), residuals(m, type = "response"), nclass = 17, xlab = "Estimated Pr(participation)")
# הערכים עצמם: ממוצע p̂, ממוצע השארית ו-2·sd/√n בכל קבוצה (arm מחשב את הגבול מסטיית התקן של השאריות בקבוצה, לא מ-p̄(1 − p̄) כבספר – העמוד כבספר)
br <- arm:::binned.resids(fitted(m), residuals(m, type = "response"), nclass = 17)$binned
round(br[, c("xbar", "ybar", "n", "2se")], 4)                          # קבוצה 1: p̂ .135, שארית −.135, n 17 (העמוד: זהה)

# כלל "חלקי ארבע" (Gelman & Hill, 2007, עמ' 82): B/4 – החסם העליון לשינוי בהסתברות ליחידת מנבא
round(coef(m)[-1] / 4, 3)                                              # ותק .026, שייכות .258, קיבוץ לעומת עיר .199

# הפרדה מושלמת (Gelman & Hill, 2007, עמ' 104): glm מזהיר "fitted probabilities numerically 0 or 1 occurred"; bayesglm נותן אומדן סופי
x <- c(-3, -2.5, -1, 0, 0.5, 1, 1.5, 2.5, 3, 3.5, 4, 5, 6); y <- as.integer(x > 2)
coef(summary(glm(y ~ x, family = binomial)))        # B = 44.3, SE = 55,296 – אין לפרש
coef(summary(bayesglm(y ~ x, family = binomial)))   # B = 1.86, SE = .88

דיווח התוצאות

Field (2024, סעיף 20.8): כמו כל מודל ליניארי – לוח עם B, טעות התקן ו-p, יחס הסיכויים עם רווח הסמך, הקבוע (כדי שהקורא יוכל לשחזר את המשוואה), וסטטיסטיקה כללית של המודל (R², χ²) בהערת הלוח; גם המנבאים הלא-מובהקים, "כי זה יכול להיות בעל ערך כמו לדעת אילו מנבאים מובהקים". לפי APA (2020, סעיף 6.36) R² ו-p בלי אפס מוביל; OR יכול לעלות על 1 ולכן נכתב עם אפס. Pallant (2020, פרק 14) מדגימה את הפסקה: "רגרסיה לוגיסטית ישירה נערכה לבחינת השפעתם של… על הסיכויים ש… המודל המלא נמצא מובהק, χ²(5, N = 241) = 76.02, p < .001, כלומר הוא מבחין בין… המודל סיווג נכון 75.1% מהמקרים. כפי שמוצג בלוח 1, רק שלושה מהמשתנים תרמו תרומה ייחודית מובהקת… המנבא החזק ביותר היה…, עם יחס סיכויים 7.27" – ואחריה לוח B / SE / Wald / df / p / OR / 95% CI. משפטי הדיווח שבעמוד בנויים על הפסקה של Pallant, ולוח 2 הוא הלוח שלה.

טעויות נפוצות

לפרש B כמו ברגרסיה ליניארית. B הוא שינוי בלוג-סיכויים; מדווחים OR. וגם OR אינו "שינוי בהסתברות": פי 3 בסיכויים הוא לא פי 3 בהסתברות – כלל "חלקי ארבע" של Gelman ו-Hill נותן את החסם לשינוי בהסתברות.

להתבלבל בכיוון של הקידוד. OR של .64 ו-1.56 הם אותו ממצא; SPSS מנבא את הערך הגבוה, והעמוד – את הקטגוריה שבחרתם. אומרים במילים של מי הסיכויים למה, ומולידים את רווח הסמך ביחד עם ההופכי.

להכניס משתנה קטגוריאלי עם שלוש קטגוריות כמספר. "עיר = 1, מושב = 2, קיבוץ = 3" כמנבא רציף אומר שקיבוץ הוא "פי שלושה עיר". מסמנים "קטגוריאלי" ומקבלים דמים.

לקרוא R² מדומה כשונות מוסברת. Cox & Snell ו-Nagelkerke משווים מודלים; הם לא אומרים "המודל מסביר 24%".

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

להתעלם מטעויות תקן ענקיות. SE של 40 עם OR של מיליון אינו ממצא – הוא הפרדה מושלמת או תא ריק (Field, Section 20.4).

לתת ל-SPSS לבחור מנבאים. Stepwise – לא לבדיקת השערות (Pallant; Field). בונים היררכית, לפי תיאוריה.

לומר "גורם". יחס סיכויים במחקר מתאמי הוא "קשור ל"; סיבתיות דורשת מערך (עמוד משתנים ומערכי מחקר).

מקורות

American Psychological Association. (2020). Publication manual of the American Psychological Association (7th ed.). https://doi.org/10.1037/0000165-000

Field, A. (2024). Discovering statistics using IBM SPSS statistics (6th ed.). SAGE.

Gelman, A., & Hill, J. (2007). Data analysis using regression and multilevel/hierarchical models. Cambridge University Press.

Pallant, J. (2020). SPSS survival manual: A step by step guide to data analysis using IBM SPSS (7th ed.). Routledge.

Hosmer ואחרים (2013), Menard (2002), Cox ו-Snell (1989), Nagelkerke (1991), Agresti (2013) ו-Lo ואחרים (2004) – כמצוטטים אצל Field (2024); Tabachnick ו-Fidell (2013), Hosmer ו-Lemeshow (2000), Peat (2001) ו-Wright (1995) – כמצוטטים אצל Pallant (2020); Landwehr ואחרים (1984), Albert ו-Anderson (1984), Firth (1993) ו-Heinze ו-Schemper (2003) – כמצוטטים אצל Gelman ו-Hill (2007, עמ' 105). לפי כלל האתר, ברשימת המקורות מופיעים רק מקורות שנקראו במקור.