בלוג, הדמיית נתונים

תראו איזה יופי. שני גלי קורונה בבריטניה בהשוואה ישירה.

לקחתי את הגרף הזה מכאן

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

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

לפני ואחרי בהדמיית נתונים. תרשים רדאר (תרשים עכביש)

בלוג, הדמיית נתונים

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

לפני: הבעיות של תרשים עכביש 

הנה השחזור שלי של תרשים רדאר שראיתי באחת הקבוצות בפייסבוק. 

מה הבעיות שלו? 

הבעיה הראשונה היא הקריאוּת (readability באנגלית): הגרף הזה לא קריא. האם אתם יכולים להזות בצורה מהירה את הערך של הסדרה האדומה עבור ״substance abuse״? לדעתי, לא.

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

אחרי: בחירת גרף מבוססת מסקנה

מה האלטרנטיבה?

קודם כל, צריך להחליט מה המסקנה של הגרף. לא רק לחשוב, אלא לכתובת את המסקנה ככותרת של הגרף. זה יאלץ אותך להחליט מה המסקנה וידריך אותך במאמצים לשיפור. (אני מאוד ממליץ לקרוא את הפוסט הזה https://gorelik.net/…/how-to-suck-less-in-data…/ או לראות את ההקלטה של ההרצאה שלי כאן: https://youtu.be/xGfaFdoQVHM

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

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

(שימו לב שגם כאן מיינתי את העמודות. הדרך הקלה ביותר לשפר את הקריאוּת של גרף עמודות זה למיין אותם לפי הערך.


קוד פייתון שהשתמשתי בו כדי ליצור את הגרפים כאן נמצא כאן: https://gist.github.com/bgbg/db833db723998cd244b5049bfe01f5ac

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

בלוג

הקלטתי קורס מבוא בסיסי להדמיית נתונים עבור מערכת השידורים הלאומית. הקורס מיועד לתלמידי תיכון ולא מתבסס על ידע מוקדם כלשהו. הוא יהיה מועיל במיוחד עבור אנשים שלא מתעסקים בניתוח הנתונים בחיי היום־יום המקצועיים שלהם. לצערי, המערכת של משרד החינוך לא תומכת ברשימות playlist.
הטבלה הבאה מסדרת את כל הסרטונים בסדר הנכון

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

מהי ההזדמנות המפוספסת ביותר בהצגה גרפית של נתונים ואיך אפשר להשתפר את האימפקט של המצגת שלכם ב-94% תוך דקה?

הדמיית נתונים

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

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

מתי: יום רביעי, ה־21 באוקטובר בשעה 20:00

איפה: בזום, כמובן

בעלי חשבון פייסבוק יכולים להרשם כאן.

אפשר להגיע ישירות דרך הקישור לזום.

(הקישור לזום יהיה פעיל רבע שעה לפנית תחילת הוובינר)

https://jce-ac-il.zoom.us/j/92147623684

בואו, יהיה כיף. גם אם אתם לא בתחום הדאטה. בעיקר אם אתם לא

חשדות טובות. חרא של גרפים

בלוג, הדמיית נתונים

אני מתנצל על השפה הבוטה, אני פשוט נסער (טוב, לא באמת, סתם עושה את עצמי). 

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

הנה גרף שראיתי בקבוצת הפייסבוק https://www.facebook.com/groups/DataVisualizationIsrael

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

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

מה רע בגרפים האלה?

מה רע בגרפים האלה? מה לא טוב בהם? שום דבר לא טוב!

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

ועכשיו בואו נחזור להדמיית נתונים. תראו את הגרף הזה

איזה גרף יפה! אילו קווים חלקים ונעימים. אלא מה? 

הפעם היחידש שאנחנו משתמשים בקווים האלה היא כאשר אנחנו רוצים להציג חוסר וודאות. במקרים האלה, המדד אותו אנחנו מציגים נמצא על ציר ה־x וציר ה־y מראה את רמת הבטחון שלנו בערך הספציפי. במקרים האלה, המרחק בין ה־״פעמונים״, כמו גם העובי שלהם, וגם השטח שמשוטף לשתי העקומות – כולם בעלי משמעות. הנה דוגמה לשימוש נכון בעקומות מסוג זה. כאן הציר האופקי מראה את הסיכוי של אתר אינטרנט מסויים למכור מוצר, שלוש העקומות השונות מייצגים שלוש גרסאות של אותו האתר, וכך ניתן לקבל החלטה מושכלת איזו גרסה עדיפה ומה הסיכוי שההחלטה תתברר כנכונה

(מקור התמונה – כאן)

ובחזרה לגועל הנפש שלנו (באמת, אני לא מגזים). בגרף ה־״חמוד״ הזה, אין למיקום הפעמון, העובי שלו ומידת החפיפה שום משמעות! כל מה מעניין זה הגובה של הצורה. אז למה לא קיבלנו גרף עמודות? באמת שאין לי מושג. הנה, הפכתי את הגרף המקורי לעמודות. עכשיו, כל נהיה בסדר.

למה זה חשוב?

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

לפעמים, צבע זה דבר טוב. רק לפעמים

בלוג

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

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

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

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

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

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

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

חבית של דבש עם כפית של חרא?

בלוג, הדמיית נתונים

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

המדריך שלה להדמיית נתונים (אני בכוונה לא שם לינק, כדי לא להעלות את ה־rank של העמוד הזה). 

שימו לב איך נראה הגרף שמופיע על עמוד הבית של המדריך 

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

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

זוויות הפלחים הן 182 ו־75 מעלות, בהתאמה, יחס של 2.42:1. הרדיוס של המקטעים הם 135 ו־110פיקסלים. עם קצת מתמטיקה, אחנו מקבלים שאורך הקשתות של שני הפלחים הם 426 ו־144פיקסלים, יחס של 2.96:1. ומה עם השטחים: כאן, בגלל התלות הריבועית היחס עוד יותר גדול: 28,930 פיקסלים, לעומת 7,915 שנותנים יחס של 3.66:1. 

אז נכון, הצבעים יפים, אבל אילו יחסים הגרף הזה מייצג?

חברת IBM אולי עושה מחשבים טובים, אבל אל תלמדו מהם איך עושים הדמיית נתונים!

כל מה שטוב בהדמיית נתונים

בלוג, הדמיית נתונים

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

The quintessence of data visualization usefulness. These graphs are SOOOO good and convincing.

The quintessence of data visualization usefulness — Boris Gorelik

קוד הסדנה זמין להורדה

בלוג, הדמיית נתונים

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

קוד לסדנה זמין בלינק הבא

https://github.com/bgbg/datascience_dataviz_workshop/

לא זאת השאלה

בלוג, הדמיית נתונים

לא זאת השאלה. על גרף קורלציה והאלטרנטיבות

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

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

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

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

מה כן השאלה?מה הפתרון? עוד רגע נגלה, בוא נראה עוד דוגמא.

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

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

בעיה נוספת עם גרף הקורלציה היא שהוא מניח הנחה נסתרת כאילו המדד בציר ה־X הוא הגורם המשפיע או המדדת ה״אמיתי״ ואילו המדד בציר ה־Y המושפע, או ה״טוען לכתר״. כאן זה לגמרי לא נכון. בשתי הדוגמאות, אין מדד ״אמיתי״ ו־״לא אמיתי״ ואין מדד אחד ש־״משפיה״ ואחד ״מושפע״. אז מה יש לנו?

מה השאלה?

השאלה האמיתית היא מה מידת ההסכמה בין שני המספרים או מידת ההבדל בינהם. לכן נציג את ההבדל בין שני המדדים. אבל הבדל כפונקציה של מה? איזה מדד נצייר על ציר ה־X? האם הבדל המכירות הוא פונקציה של המכירות באמצע השבוע או בסוף השבוע? האם ההבדל במדידות שי הנשיפה הוא פונקציה של המדד הזה הנמדד במכשיר הגדול או במכשיר הקטן? אם נבחר מדד אחד נייחס לו חשיבות רבה יותר. אז הפתרון הוא פשרה מפאיניקית: נקח את הממוצע. זה בדיוק מה שהציעו רבותינו Altman ו־Bland במאמרם שהתפרסם בשנת 1986 "Statistical methods for assessing agreement between two methods of clinical measurement". המאמר היה כל כך חשוב שהוא התפרסם שוב, כמעט בלי שינויים ב־1999 תחת השם "Measuring agreement in method comparison studies". הכותרת מבטאית את הרעיון: במקום לצייר קורלציה, אנחנו מציירים ומנתחים את מידת ההסכמה בין שני מדדים. על מנת לבצע את המשימה הזאת, אנחנו מציירים את ממוצע המדידות בציר ה־X ואת ההבדל בציר ה־Y.

הנה התוצאה של אלטמן ובלנד

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

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

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

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

אז מה היה לנו כאן?

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

אני ממליץ מאוד לקרוא את המאמר השני של אלטמן ובלנד. המאמר זמין כאן