פעולות על וקטורים
חלק מהיחידה יסודות במסלול ה-R של Coddy. שיעור 59 מתוך 78.
אחת התכונות העוצמתיות ביותר של R היא היכולת לבצע פעולות על וקטורים שלמים בבת אחת, בלי צורך לעבור בלולאה על כל איבר. כך הקוד שלך נעשה גם נקי יותר וגם יעיל יותר.
כאשר מחילים אופרטור אריתמטי על וקטור, R מבצעת את הפעולה על כל איבר:
prices <- c(10, 25, 15, 30)
discounted <- prices * 0.9
print(discounted)פלט:
[1] 9.0 22.5 13.5 27.0אפשר גם לבצע פעולות בין שני וקטורים באותו אורך. R מצמיד את האיברים המתאימים זה לזה:
quantities <- c(2, 1, 4, 3)
prices <- c(10, 25, 15, 30)
totals <- quantities * prices
print(totals)פלט:
[1] 20 25 60 90R מספקת פונקציות מובנות שימושיות לחישובי וקטורים נפוצים, כמו sum(), mean(), min() ו-max():
scores <- c(85, 92, 78, 95, 88)
print(sum(scores))
print(mean(scores))
print(min(scores))
print(max(scores))פלט:
[1] 438
[1] 87.6
[1] 78
[1] 95אתגר
קלהווקטורים הבאים ניתנים לך:
hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)בצע את הפעולות הבאות והדפס כל תוצאה:
- חשב את ההכנסה היומית עבור כל יום על ידי הכפלת
hours_workedב-hourly_rate(איבר-איבר). הדפס את המערך הזה. - הוסף בונוס של 10% לכל ההכנסות היומיות (הכפל ב-
1.1). הדפס את מערך ההכנסות המעודכן. - הדפס את סך ההכנסות לשבוע באמצעות
sum() - הדפס את ההכנסה היומית הממוצעת באמצעות
mean() - הדפס את ההכנסה הגבוהה ביותר ביום יחיד באמצעות
max() - הדפס את ההכנסה הנמוכה ביותר ביום יחיד באמצעות
min()
הפלט שלך צריך להיות:
[1] 120 140 162 132 136
[1] 132.0 154.0 178.2 145.2 149.6
[1] 759
[1] 151.8
[1] 178.2
[1] 132נסו בעצמכם
# וקטורים נתונים
hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)
# TODO: כתבו את הקוד שלכם למטה
# 1. חשבו את ההכנסות היומיות (כפל איבר באיבר)
# 2. הוסיפו בונוס של 10% להכנסות היומיות
# 3. הדפיסו את סך ההכנסות לשבוע באמצעות sum()
# 4. הדפיסו את ממוצע ההכנסות היומיות באמצעות mean()
# 5. הדפיסו את ההכנסות הגבוהות ביותר ביום אחד באמצעות max()
# 6. הדפיסו את ההכנסות הנמוכות ביותר ביום אחד באמצעות min()השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים (AND, OR)אופרטורים לוגיים חלק 2 (NOT)חזרה – לוגיקה פשוטהלוגיקה וקטורית חלק 1לוגיקה וקטורית חלק 27מחשבון לחלוקת החשבון
הודעת פתיחהקבלת קלט מהמשתמש2משתנים וסוגי נתונים
סוג נתונים מספריסוג נתונים שלמיםסוג נתונים של תוויםסוג נתונים לוגיבדיקת סוגי נתוניםמוסכמות למתן שמותערכים חסרים: NAסיכום – יצירת משתנים8לולאות
לולאת forלולאת whileפקודת breakהמשך (continue)סיכום – עצרתיצירת רצפים (seq, :)לולאות מקוננותסיכום – קלט דינמי3אופרטורים חלק 1
אופרטורים אריתמטייםחלוקת מספרים שלמים ומודולואופרטורי השמהחזרה – חשבון פשוטאופרטורי השוואה6קלט/פלט בסיסי
הדפסת פלטחתול כפלטפלט עם משתניםקריאת קלט באמצעות readline()יסודות המרת טיפוסיםחזרה – מחשבון גילחזרה – אמת או שקר9פונקציות
הכרזה על פונקציהארגומנטים של פונקציהערכי החזרהסיכום – פונקציית סיגמאסיכום – פונקציית אימותערכי ברירת מחדל לפרמטריםתרגלו בעצמכם: קומפיילר R אונליין