Numpy: الفرق بين np.linspace وnp.arange


عندما يتعلق الأمر بإنشاء سلسلة من القيم، فإن linspace و arange هما دالتان شائعتان في NumPy.

هنا هو الفرق الدقيق بين الوظيفتين:

  • يسمح لك linspace بتحديد عدد الخطوات
  • arange يسمح لك بتحديد حجم الخطوات

توضح الأمثلة التالية كيفية استخدام كل وظيفة عمليًا.

مثال 1: كيفية استخدام np.linspace

تستخدم الدالة np.linspace() الصيغة الأساسية التالية:

np.linspace (بدء، إيقاف، رقم، …)

ذهب:

  • start : القيمة الأولية للتسلسل
  • stop : القيمة النهائية للتسلسل
  • num : عدد القيم المراد توليدها

يوضح الكود التالي كيفية استخدام np.linspace() لإنشاء 11 قيمة متباعدة بشكل متساو بين 0 و 20:

 import numpy as np

#create sequence of 11 evenly spaced values between 0 and 20
n.p. linspace (0, 20, 11)

array([ 0., 2., 4., 6., 8., 10., 12., 14., 16., 18., 20.])

والنتيجة هي مجموعة من 11 قيمة متباعدة بشكل متساو بين 0 و 20.

باستخدام هذه الطريقة، يحدد np.linspace() المسافة بين القيم تلقائيًا.

مثال 2: كيفية استخدام np.arange

تستخدم الدالة np.arange() الصيغة الأساسية التالية:

np.arange (بدء، توقف، خطوة، …)

ذهب:

  • start : القيمة الأولية للتسلسل
  • stop : القيمة النهائية للتسلسل
  • الخطوة : التباعد بين القيم

يوضح الكود التالي كيفية استخدام np.arange() لإنشاء سلسلة من القيم بين 0 و 20 حيث يكون التباعد بين كل قيمة 2:

 import numpy as np

#create sequence of values between 0 and 20 where spacing is 2
n.p. arange (0, 20, 2)

array([ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18])

والنتيجة هي تسلسل القيم بين 0 و 20 حيث يكون التباعد بين كل قيمة 2.

باستخدام هذه الطريقة، يحدد np.arange() تلقائيًا عدد القيم التي سيتم إنشاؤها.

إذا استخدمنا حجم خطوة مختلفًا (مثل 4)، فسيقوم np.arange() تلقائيًا بضبط العدد الإجمالي للقيم التي تم إنشاؤها:

 import numpy as np

#create sequence of values between 0 and 20 where spacing is 4
n.p. arange (0, 20, 4)

array([ 0, 4, 8, 12, 16])

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ العمليات الشائعة الأخرى في بايثون:

كيفية ملء مصفوفة NumPy بالقيم
كيفية استبدال العناصر في مجموعة NumPy
كيفية حساب القيم الفريدة في مجموعة NumPy

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *