סטטיסטיקה למדעי הבריאות · תרגיל

תרגול 1 · 20.10

SPSS, סולמות מדידה ו-Recode

תרגול של 46 דקות. סולמות המדידה בקצרה, למה סוג המשתנה קובע את הניתוח, ייבוא קובץ Excel ל-SPSS, והפיכה של צריכת סיבים תזונתיים, משתנה רציף, לשש קבוצות ב-Recode.

9 דקות קריאה · 10 חלקיםגודל טקסט

בעמוד

מפת התרגול 20 חלקים
זמן בהקלטה מה קורה שם
0:00 פתיחה. מהשבוע הבא: להגיע להרצאה עם SPSS פתוח
0:02 התוכנית: סולמות מדידה בקצרה, ואז התוכנה
0:03 רציף מול קטגוריאלי: גובה, BMI, וקבוצות של BMI
0:05 גרמים של סיבים או של חלבון, ומספר ילדים
0:07 ארבעת סולמות המדידה, מהשקף
0:09 למה צריך לדעת את סוג המשתנה: ממוצע רק לרציף
0:10 Frequencies: שכיחויות לקטגוריות
0:11 שאלה מהכיתה: איך משקל גוף בסולם יחס, אם אף אחד לא שוקל אפס?
0:13 הנתונים: צריכת סיבים של 50 מטופלים, ולמה צריך קבוצות. בשקפים: הגדרת המשתנים והתוצאות
0:14 פתיחת SPSS ושמירת קובץ ה-Excel בשולחן העבודה. עד 0:20 בעיקר עזרה
0:18 ייבוא מ-Excel
0:21 שש הקבוצות של צריכת הסיבים
0:22 Recode into Different Variables, ושם בלי רווח
0:27 Old and New Values: הקבוצה הראשונה
0:30 הקבוצות 2 עד 6
0:33 קבוצות חופפות: למה 14.99 ולא 15
0:37 המשתנה החדש בחלון הנתונים
0:38 שמות לקבוצות: Variable View, עמודת Values
0:42 המלצות לקורס
0:44 שעת התרגול נשארת 16:00. סוף

בהקלטה המסך המשותף לא מתחלף מ-0:14 עד 0:37. כל הזמן הזה רואים את שקף הגדרת המשתנים, בזמן שבכיתה עובדים ב-SPSS. לכן חלון הייבוא וחלון ה-Recode לא נראים, והשלבים שלהם כאן הם לפי מה שנאמר. מ-0:37 SPSS שוב על המסך: המשתנה החדש וחלון השמות לקבוצות.

ענייני הקורס

בשבועות הבאים להגיע להרצאה עם SPSS פתוח ועם קובץ הנתונים של אותו שבוע מהמודל. בהרצאה עושים הרבה דוגמאות בתוכנה, והזמן קצר
המלצה לכתוב סיכום של כל מפגש
הערכה נאמר שבקורס יש שתי עבודות עם חומר פתוח. בתרגול 2 נאמר שהפורמט השתנה לבחינה
שעת התרגול נשארת 16:00. היה ניסיון להקדים אותה, והוא לא הסתדר עם שיעור אחר של חלק מהקבוצה

סולמות המדידה, בקצרה

אותם ארבעה סולמות כמו בהרצאה 1. בשקף של התרגול הם מופיעים בשמות עבריים קצת אחרים:

סולם בשקף מה יש בו דוגמאות מהשקף
נומינלי (Nominal) שמי שמות או קטגוריות, בלי סדר מגדר, סוג מרפאה, סוג דיאטה (טבעונית, ים-תיכונית), מחלת רקע כן או לא
אורדינלי (Ordinal) סדר קטגוריות עם סדר. המרווח בין הדרגות לא קבוע שביעות רצון 1 עד 5, תיאבון ירוד, רגיל או מוגבר, קבוצת צריכת סיבים
אינטרוולי (Interval) רווח כמותי, מרווחים שווים, בלי אפס מוחלט טמפרטורה בצלזיוס
יחס (Ratio) יחס כמותי, עם אפס מוחלט. מותר לכפול ולחלק משקל בק"ג, גובה בס"מ, גלוקוז בדם (mg/dL), צריכת סיבים בגרם ליום

ב-SPSS יש רק שלוש רמות: Nominal, ‏Ordinal ו-Scale. ‏Scale הוא אינטרוולי ויחס יחד, כלומר המשתנים הכמותיים. בשקף כתוב "יחס (Ratio / Scale)", ובתרגול נאמר שמשתנים אינטרווליים כמעט לא נפגוש.

רציף מול קטגוריאלי

רציף: המספר הוא כמות של משהו, והוא יכול להשתנות כל הזמן. גובה, 1.63 מטר. משקל. ה-BMI עצמו. כמה גרמים של סיבים או של חלבון מישהו אכל: היום 20, מחר 30. כל מספר אומר בדיוק את מה שהוא.

קטגוריאלי: המספר מסמן קבוצה. ה-BMI, כשמחלקים אותו לקבוצות:

קבוצה BMI קוד לדוגמה
תת-משקל עד 18.4 1
משקל תקין 18.5 עד 24.9 2
עודף משקל 25 עד 29.9 3

הקוד 1 הוא לא "אחד" של משהו. הוא אומר "תת-משקל".

תיקון. בתרגול קבוצות ה-BMI נקראו נומינליות. יש להן סדר, מתת-משקל ועד עודף משקל, ולכן הן אורדינליות. כך גם בהרצאה 1, שם קטגוריות משקל הן דוגמה לסולם אורדינלי, וכך גם קבוצת צריכת הסיבים בשקף של התרגול.

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

מספר ילדים. שאלה מהכיתה: אין חצי ילד, אז זה לא רציף? מספר ילדים הוא כמותי בדיד: סופרים יחידות שלמות. יש לו אפס אמיתי, ולכן הוא בסולם יחס, וב-SPSS הוא Scale.

איך משקל גוף בסולם יחס, אם אף אחד לא שוקל אפס? גם זו שאלה מהכיתה, והתשובה שם לא הייתה חדה. הכלל, כמו בהרצאה 1: אפס אמיתי פירושו שבאפס אין מהתכונה כלום. לכן מותר לחלק ולומר ש-80 ק"ג הם פי שניים מ-40 ק"ג. זה לא תלוי בכך שמישהו באמת שוקל אפס. בצלזיוס האפס הוא לא "אין חום", ולכן 30 מעלות אינן פי שניים מ-15.

למה סוג המשתנה קובע

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

הדרך לשכיחויות ב-SPSS: Analyze › Descriptive Statistics › Frequencies. לפי התרגול, את הדרך הזו צריך לדעת גם כשמעירים אתכם באמצע הלילה.

הנתונים: צריכת סיבים במרפאת סוכרת

השקפים מציגים דוגמה קלינית: צריכת סיבים תזונתיים בקרב 50 מטופלי סוכרת. הנתונים בקובץ Excel במודל, שורה לכל מטופל. המטופל הראשון צרך 12.5 גרם ליום, השני 14, השלישי 11.

הגדרת המשתנים, מהשקף:

Name Label Values Measure
patient_id מספר מטופל אין Nominal
fiber_intake_g צריכת סיבים יומית, גרם ליום אין Scale
fiber_category קבוצת צריכת סיבים 1 עד 6, לפי הטבלה בהמשך Ordinal

שלושתם Numeric. בצריכת הסיבים ספרה אחת אחרי הנקודה (Decimals 1), ובשניים האחרים אין.

השאלה שבשבילה צריך קבוצות. לא מעניין מה האחוז של מי שצרך בדיוק 12.5 גרם. מעניין כמה מהמטופלים עומדים בהמלצה. מרשימה של 50 מספרים, אחד אחרי השני, את זה לא רואים. עם קבוצות זה האחוז של הקבוצות שבהמלצה ומעליה. בשקף, 25 עד 29 גרם מסומנים "יעד נשים", ו-30 עד 34 "יעד גברים".

ייבוא מ-Excel

שלב איפה מה עושים
1 מודל מורידים את קובץ ה-Excel ושומרים אותו בשולחן העבודה
2 SPSS בחלון הפתיחה: New Dataset
3 File › Import Data › Excel בוחרים את הקובץ משולחן העבודה, ו-Open

אם הקובץ לא נשמר במחשב, הוא לא יופיע ברשימה. כמו בהרצאה 1: מורידים קודם, ופותחים מהמחשב.

שתי הלשוניות בתחתית החלון:

לשונית מה יש בה
Data View הנתונים. שורה לכל מטופל, עמודה לכל משתנה
Variable View ההגדרות. שורה לכל משתנה: Name, Type, Decimals, Label, Values, Measure

Recode: מרציף לקבוצות

הקבוצות. שש קבוצות, כל אחת של חמישה גרמים:

קבוצה גרם ליום בשקף
1 פחות מ-15 נמוכה מאוד
2 15 עד 19.99 נמוכה
3 20 עד 24.99 בינונית
4 25 עד 29.99 יעד נשים
5 30 עד 34.99 יעד גברים
6 35 ומעלה גבוהה

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

ב-SPSS:

שלב איפה מה עושים
1 Transform › Recode into Different Variables מעבירים את fiber_intake_g ימינה
2 Output Variable, ‏Name שם למשתנה החדש, בלי רווח. ואז Change
3 Old and New Values ב-Old Value: ‏Range, LOWEST through value, ‏14.99. ב-New Value: ‏1. ואז Add
4 אותו חלון Range: ‏15 through 19.99, ‏New Value 2, ‏Add. וכך גם 3, 4 ו-5
5 אותו חלון Range, value through HIGHEST: ‏35, ‏New Value 6, ‏Add
6 Continue, ואז OK

בקובץ כבר היה משתנה בשם fiber_category, שהוכן מראש, ולכן החדש נקרא fiber_catego. אחרי OK הוא מופיע בחלון הנתונים כעמודה אחרונה, עם 1.00 עד 6.00. בשורות שנראו על המסך הוא זהה למשתנה שהוכן מראש.

שם בלי רווח. עם רווח, למשל fiber cat, ‏SPSS מסרב ומודיע Variable name contains an illegal character. במקום רווח: קו תחתון. כמו CostCat בהרצאה 2. ולפי התרגול: הודעת שגיאה כזו לא אומרת שמשהו לא בסדר אצלכם. מנסים, טועים וחוזרים.

קבוצות חופפות. בניסיון הראשון בכיתה הקבוצה הראשונה הייתה LOWEST through 15, והשנייה 15 through 19.99. מהכיתה עלה מה הבעיה: 15 נמצא בשתיהן. למי שצרך בדיוק 15 גרם אין קבוצה אחת. התיקון: מסמנים את השורה ברשימת Old → New, לוחצים Remove, ומזינים מחדש LOWEST through 14.99. הכלל כמו בהרצאה 2: הקבוצות לא חופפות, וכל ערך שייך לקבוצה אחת בלבד.

איפה זה תופס אתכם.

  • 14.99 עובד כי לנתונים יש ספרה אחת אחרי הנקודה. בנתונים מדויקים יותר, ערך כמו 14.995 לא היה נכנס לשום קבוצה
  • רמת המדידה של המשתנה החדש. על המסך SPSS יצר את fiber_catego כ-Nominal. לפי השקף, קבוצת צריכה היא Ordinal. משנים את זה בעמודת Measure
  • גם הייבוא קובע רמת מדידה לבד. על המסך, אחרי הייבוא, patient_id היה Scale ו-fiber_category היה Nominal. לפי השקף הם Nominal ו-Ordinal. כדאי לעבור על עמודת Measure אחרי כל ייבוא

שמות לקבוצות: Value Labels

עכשיו יש משתנה אחד. יום אחד יהיו 200, ואף אחד לא יזכור מה זו קבוצה 1. לכן מגדירים לכל קוד את המשמעות שלו:

שלב איפה מה עושים
1 לשונית Variable View השורה של fiber_catego
2 עמודת Values לוחצים על שלוש הנקודות
3 חלון Value Labels פלוס. ב-Value כותבים 1, וב-Label את הטווח
4 אותו חלון שוב פלוס לכל קבוצה, עד 6. בסוף OK

התוויות שהוקלדו על המסך:

Value Label
1 <14.99 g
2 15-19.99 g
3 20-24.99 g
4 25-29.99 g
5 30-34.99 g
6 >35

התווית היא רק טקסט. היא לא משנה את החלוקה. מי שצרך בדיוק 35 גרם נמצא בקבוצה 6, גם אם בתווית כתוב "מעל 35": מה שקובע הוא ה-Recode.

התוצאות שבשקף

בכיתה לא הספיקו להריץ את הניתוח עצמו. התוצאות הופיעו בשקף, ב-0:13.

צריכת הסיבים בגרמים (fiber_intake_g, ‏Scale):

N תקפים 50, בלי חסרים
ממוצע (Mean) 23.76 גרם ליום
חציון (Median) 23.25
סטיית תקן (Std. Deviation) 6.83
מינימום 11.00
מקסימום 38.00
טווח (Range) 27.00
תרשים היסטוגרמה, עם עקומה נורמלית

קבוצות הצריכה (fiber_category, ‏Ordinal):

קבוצה גרם ליום Frequency Percent Cumulative Percent
1 פחות מ-15 5 10.0 10.0
2 15 עד 19.99 11 22.0 32.0
3 20 עד 24.99 14 28.0 60.0
4 25 עד 29.99 9 18.0 78.0
5 30 עד 34.99 7 14.0 92.0
6 35 ומעלה 4 8.0 100.0
סך הכל 50 100.0

השכיח (Mode) הוא קבוצה 3. התרשים המתאים, לפי השקף: תרשים עמודים.

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

הטווח הוא הגדול פחות הקטן, 38−11=27. החציון של 50 תצפיות הוא הממוצע של התצפית ה-25 וה-26 בסדר עולה, 23.0 ו-23.5:

23.0+23.52=23.25

והאחוז של קבוצה 3:

1450×100=28

כמה עומדים ביעד של הנשים, 25 גרם ומעלה? קבוצות 4, 5 ו-6: 9+7+4=20 מטופלים, כלומר 40 אחוז. אפשר גם מהאחוז המצטבר: עד קבוצה 3 יש 60 אחוז, ולכן 100−60=40.

מה לא נלמד בתרגול הזה

  • הניתוח התיאורי עצמו ב-SPSS, כלומר ממוצע, סטיית תקן והיסטוגרמה: רק התוצאות הוצגו בשקף. ההרצה נעשתה בתרגול 2, על קובץ אחר
  • חלונות הייבוא וה-Recode: לא נראים בהקלטה
  • 13 השורות האחרונות של הנתונים: לא הוצגו

בדיקה עצמית

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

ה-BMI עצמו הוא משתנה רציף, בסולם יחס, וב-SPSS הוא Scale. "משקל תקין" הוא קבוצה בסולם אורדינלי, כי יש סדר בין הקבוצות.

למה אי אפשר לחשב ממוצע לקבוצות ה-BMI?הצגת התשובה

כי הקודים הם לא כמויות. 1 אומר "תת-משקל", ולא אחד של משהו. לקבוצות מחשבים שכיחויות: כמה אנשים, ובאיזה אחוז, בכל קבוצה.

בניסיון הראשון של ה-Recode, LOWEST through 15 היה 1, ו-15 through 19.99 היה 2. מה הבעיה, ואיך מתקנים?הצגת התשובה

הערך 15 נמצא בשתי הקבוצות. מוחקים את השורה הראשונה ב-Remove, ומזינים LOWEST through 14.99.

‏SPSS לא קיבל את השם fiber cat. למה, ומה כותבים במקום?הצגת התשובה

כי SPSS לא מקבל רווח בשם משתנה. כותבים קו תחתון, למשל fiber_cat.

בטבלת הקבוצות, כמה אחוז מהמטופלים צרכו פחות מ-20 גרם ליום?הצגת התשובה

32 אחוז. זה האחוז המצטבר בשורה של קבוצה 2: 10 ועוד 22.

תרגול