Menu
CoddyTech
flag Ar iconالعربيةdown icon

الأعداد العشوائية

جزء من قسم البيانات والرسوم البيانية في رحلة Machine Learning على Coddy. الدرس 18 من 60.

تبدأ عمليات المحاكاة والبيانات المُعاد ترتيبها والنماذج غير المدرَّبة بأرقام عشوائية. استغرق إنشاء هذه الأطوال الوهمية البالغ عددها 1,000 سطرًا واحدًا:

مدرّج تكراري لأطوال عشوائية عددها 1,000، على شكل جرس، يبلغ ذروته حول المتوسط 170 cm ويتناقص نحو 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.

تعطي البذرة نفسها الأرقام نفسها على أي جهاز كمبيوتر، لذا يستطيع أي شخص تكرار تجربتك. وكل سحب يحرّك المولّد إلى الأمام.

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 عبر الإنترنت