דילוג לתוכן המרכזי
מודול 1 · שיעור 2 מתוך 22/10 בקורס~12 min
שיעורי מודול (2/2)

סוגי נתונים ומטריצות

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

סוגי נתונים יסודיים

שלושת סוגי הנתונים העיקריים המשמשים לרוב ב-R הם:

  1. numeric: מספרים עשרוניים (למשל, 4.5, 10.0) או מספרים שלמים.
  2. character: מחרוזות טקסט מוקפות במרכאות כפולות או בודדות (למשל, "Alice", 'Data').
  3. logical: ערכים בוליאניים, שיכולים להיות רק TRUE או FALSE. ב-R, ניתן להשתמש גם בקיצורים T או F (אם כי מומלץ להשתמש בגרסאות המלאות לצורך הבהירות).
R
# Examples of different types
score <- 95.5          # numeric
player_name <- "Marco"  # character
is_winner <- TRUE       # logical

מטריצות

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

אתה יוצר מטריצה ​​באמצעות הפונקציה matrix(), מתן וקטור של נתונים ומציין את מספר השורות (nrow) או העמודות (ncol):

R
# Create a 2x3 matrix with values from 1 to 6
mat <- matrix(1:6, nrow = 2, ncol = 3)
print(mat)

כברירת מחדל, R מאכלסת את המטריצה ​​עמודה אחר עמודה.

גישה לאלמנטים

כדי לגשת לרכיב ספציפי במטריצה, השתמש בסוגריים מרובעים [row, column]:

R
# Extract the element at the first row, second column
value <- mat[1, 2]

# Extract an entire row by leaving the column field empty
first_row <- mat[1, ]

# Extract an entire column
second_col <- mat[, 2]

גורמים

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

R
sizes <- c("M", "L", "M", "S")
size_factor <- factor(sizes)
print(size_factor) # Also shows the Levels: S M L

שילוב נתונים: cbind ו-rbind

אנו יכולים לשלב וקטורים או מטריצות על ידי קשירה לפי עמודה עם cbind() (איגד עמודות) או לפי שורה עם rbind() (איגד שורה):

R
v1 <- c(1, 2)
v2 <- c(3, 4)

# Creates a 2x2 matrix by placing v1 and v2 side-by-side as columns
combined <- cbind(v1, v2)

נסה זאת בעצמך

פעילות גופנית#r.m1.l2.e1
ניסיונות: 0טוען...

הכריז על משתנה לוגי בשם is_active set ל-TRUE ומשתנה תו בשם user_name מוגדר ל-'Alice'.

טוען עורך...
הצג רמז

השתמש באופרטור <- עבור שני המשתנים בשורות נפרדות.

הפתרון זמין לאחר 3 ניסיונות

פעילות גופנית#r.m1.l2.e2
ניסיונות: 0טוען...

צור מטריצה ​​בשם mat המכילה את הערכים מ-1 עד 6, הבנויה עם 2 שורות (nrow = 2) ו-3 עמודות (ncol = 3).

טוען עורך...
הצג רמז

השתמש בפונקציה המטריצה ​​(1:6, nrow = 2, ncol = 3).

הפתרון זמין לאחר 3 ניסיונות

פעילות גופנית#r.m1.l2.e3
ניסיונות: 0טוען...

בהתחשב בשטיח המטריצה ​​שכבר נוצר, חלץ את האלמנט הממוקם בשורה הראשונה ובעמודה השלישית, ושמור אותו במשתנה val.

טוען עורך...
הצג רמז

גש לאלמנט באמצעות סוגריים מרובעים: val <- mat[1, 3]

הפתרון זמין לאחר 3 ניסיונות

פעילות גופנית#r.m1.l2.e4
ניסיונות: 0טוען...

צור פקטור מקטגוריות הווקטור והקצה אותו למשתנה cat_factor.

טוען עורך...
הצג רמז

השתמש בפונקציה factor(): cat_factor <- factor(categories)

הפתרון זמין לאחר 3 ניסיונות

פעילות גופנית#r.m1.l2.e5
ניסיונות: 0טוען...

בהינתן הוקטורים col1 ו- col2, שלבו אותם כעמודות של מטריצה ​​באמצעות cbind() והקצה את התוצאה ל-my_matrix.

טוען עורך...
הצג רמז

השתמש ב: my_matrix <- cbind(col1, col2)

הפתרון זמין לאחר 3 ניסיונות