تم حلها: لا تتكرر الإدخالات العشوائية المعقدة

في عالم اليوم من معالجة البيانات وتحليلها ، هناك مشكلة شائعة تنشأ وهي إنشاء إدخالات عشوائية غير متكررة باستخدام مكتبة Python الشهيرة على نطاق واسع NumPy. تهدف هذه المقالة إلى توفير حل شامل لهذه المشكلة ، والتعمق في الأعمال الداخلية للشفرة واستكشاف المكتبات والوظائف ذات الصلة.

NumPy هي مكتبة قوية تمكننا من إجراء عمليات رياضية وإحصائية متنوعة على مصفوفات ومصفوفات كبيرة متعددة الأبعاد. أحد الجوانب المهمة لتحليل البيانات والتعلم الآلي هو إنشاء أرقام عشوائية ، والتي يمكن تحقيقها باستخدام وحدة NumPy العشوائية. في بعض الحالات ، قد نحتاج إلى أن تكون هذه الإدخالات العشوائية فريدة وغير متكررة. دعنا نستكشف كيفية تحقيق ذلك باستخدام NumPy خطوة بخطوة.

أولاً ، دعنا نستورد المكتبة المطلوبة ونناقش الحل لإنشاء إدخالات عشوائية غير متكررة باستخدام NumPy.

import numpy as np

توليد أرقام عشوائية فريدة

يكمن الحل لإنشاء إدخالات عشوائية غير متكررة في فهم عشوائي الوحدة النمطية واستخدام أساليبها بكفاءة. على وجه الخصوص ، فإن numpy.random.choice () أثبتت الوظيفة أنها مفيدة للغاية في هذا السيناريو ، حيث يمكنها إنشاء عينات عشوائية من مصفوفة 1-D مع خيار منع التكرار.

دعنا نقسم الكود ونفهم كيفية إنشاء أرقام عشوائية فريدة.

def unique_random_numbers(size, lower_limit, upper_limit):
    unique_numbers = np.random.choice(np.arange(lower_limit, upper_limit), size, replace=False)
    return unique_numbers

size = 10
lower_limit = 1
upper_limit = 101

unique_numbers = unique_random_numbers(size, lower_limit, upper_limit)
print(unique_numbers)
  • فريد_الأرقام العشوائية () تأخذ الدالة ثلاث معاملات: الحجم المطلوب للصفيف ، والحد الأدنى ، والحد الأعلى للأرقام العشوائية. في هذا المثال ، نهدف إلى إنشاء 10 أرقام عشوائية فريدة بين 1 و 100.
  • داخل الوظيفة ، نستخدم numpy.random.choice () طريقة لتحديد العناصر بشكل عشوائي من نطاق تم إنشاؤه بواسطة numpy.arange () وظيفة. تضمن الوسيطة replace = False عدم تكرار الإدخالات داخل المصفوفة.
  • بعد تحديد الوظيفة ، نسميها بالقيم المحددة ونطبع المصفوفة الناتجة من الأرقام العشوائية غير المتكررة.

فهم numpy.random و numpy.arange

عشوائي الوحدة النمطية هي أداة قوية لتوليد أرقام وعينات عشوائية. بعض الوظائف شائعة الاستخدام في هذه الوحدة تشمل numpy.random.rand (), numpy.random.randn ()و numpy.random.randint (). ومع ذلك ، كما ذكرنا سابقًا ، فإن الوظيفة التي نحتاجها لهذه المشكلة هي numpy.random.choice ().

numpy.arange () هي وظيفة داخل مكتبة NumPy نفسها وتُستخدم لإرجاع تسلسل قيم متباعدة بشكل متساوٍ ضمن النطاق المحدد. يقبل ثلاث معاملات: قيمة البداية وقيمة الإيقاف وحجم الخطوة. بشكل افتراضي ، حجم الخطوة هو 1.

تطبيق إنشاء إدخالات عشوائية فريدة

إن إنشاء إدخالات عشوائية فريدة له استخداماته العملية في سيناريوهات متعددة في العالم الحقيقي ، مثل:

  • خلط البيانات: غالبًا ما يستخدم خلط البيانات في التعلم الآلي ، ويساعد في التوزيع العشوائي لترتيب نقاط البيانات ، وتقليل التحيزات وتحسين أداء النموذج.
  • أخذ العينات بدون استبدال: في الإحصائيات ، يمكن استخدام أخذ العينات العشوائية غير المتكررة لضمان أخذ عينة تمثيلية من عدد أكبر من السكان.
  • إنشاء مهام عشوائية: يمكن تحقيق توزيع المهام أو الموارد بين مجموعة دون تكرار من خلال استخدام أرقام عشوائية فريدة.

في الختام ، يعد إنشاء إدخالات عشوائية غير متكررة باستخدام NumPy أمرًا بسيطًا وفعالًا باستخدام طريقة numpy.random.choice (). يساعدنا فهم الدالتين numpy.random و numpy.arange وتطبيقهما في معالجة مجموعة من حالات الاستخدام العملي في تحليل البيانات والتعلم الآلي وما وراء ذلك.

الوظائف ذات الصلة:

اترك تعليق