Menu
CoddyTech

מספרים אקראיים

חלק מהיחידה נתונים ותרשימים במסלול ה-Machine Learning של Coddy. שיעור 18 מתוך 60.

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

היסטוגרמה של 1,000 גבהים אקראיים בצורת פעמון, עם השיא סביב הממוצע של 170 ס״מ והידלדלות לכיוון 140 ו-200

NumPy מגרילה אותם מתוך מחולל, שמופעל באמצעות זרע:

rng = np.random.default_rng(42)
heights = rng.normal(170, 10, size=1000)
print(np.round(heights[:4], 1))
print(rng.integers(1, 7, size=5))
print(np.round(rng.random(3), 2))

הדבר מדפיס:

[173.  159.6 177.5 179.4]
[2 4 3 3 5]
[0.44 0.13 0.09]

normal(mean, std, size) מתרכזת סביב הממוצע שלה. integers לא כוללת את ערך העצירה שלה, כמו range. random מחזירה מספרים עשרוניים בין 0 ל־1.

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

challenge icon

אתגר

קל

חנות מדמה שבוע שהרצה חוזרת חייבת לשחזר.

  1. צרו את rng_a מהזרע והגרילו 7 ספירות של לקוחות, מ־20 עד 60 כולל, ואז 7 הוצאות בהתפלגות נורמלית: ממוצע 15, סטיית תקן 4.
  2. הגרילו שוב את הספירות באמצעות rng_b עם אותו זרע ו־rng_c עם זרע גדול ב־1.
  3. הדפיסו כפי שמוצג למטה: הוצאות עם ספרה אחת אחרי הנקודה העשרונית, וכמה ימים b ו־c תואמים ל־a.

עבור הזרע 12:

Customers: [45 30 59 58 22 27 28]
Spend: [21.5 10.2 12.5  9.7 14.6 19.  14.9]
Same seed, days that match: 7
Seed + 1, days that match: 1

נסו בעצמכם

import numpy as np

seed = int(input())

# כתבו את הקוד שלכם למטה
quiz iconבחנו את עצמכם

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

כל השיעורים ביחידה נתונים ותרשימים

תרגלו בעצמכם: קומפיילר Python אונליין