מה ההבדל בין מטריצה ​​למסגרת נתונים?


תשובה 1:

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

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

ב- R, מסגרות נתונים בדרך כלל ניתנות לצריכה לצורת מטריצה. אתה יכול לעשות זאת על ידי התקשרות as.matrix על גבי dataframe שלך; פעולה זו תיצור מטריצה ​​על ידי הוצאת כל האלמנטים שבמסמך הנתונים שלך לסוג נתונים נפוץ. להלן דוגמא לשחזור, שתוכלו לרוץ בכל קונסולת R:

> ראש (שובר warp) מפר את מתח הצמר 1 26 AL 2 30 AL 3 54 AL 4 25 AL 5 70 AL 6 52 AL> as.matrix (הראש (מתיחות)) שובר מתח צמר 1 "26" "A" "L" 2 "30" "A" "L" 3 "54" "A" "L" 4 "25" "A" "L" 5 "70" "A" "L" 6 "52" "A" "L"

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

> מטריצה ​​(1: 5, nrow = 2) [, 1] [, 2] [, 3] [1,] 1 3 5 [2,] 2 4 1 הודעת אזהרה: במטריקס (1: 5, nrow = 2) ): אורך הנתונים [5] הוא לא ריבוי משנה או כפל של מספר השורות [2]

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