Numpy mean () مقابل average (): ما الفرق؟
يمكنك استخدام وظائف np.mean() أو np.average() لحساب متوسط قيمة المصفوفة في بايثون.
هنا هو الفرق الدقيق بين الوظيفتين:
- يقوم np.mean دائمًا بحساب الوسط الحسابي.
- يحتوي np.average على معلمة وزن اختيارية يمكن استخدامها لحساب المتوسط المرجح.
توضح الأمثلة التالية كيفية استخدام كل وظيفة عمليًا.
مثال 1: استخدم np.mean() وnp.average() بدون أوزان
لنفترض أن لدينا الجدول التالي في بايثون الذي يحتوي على سبع قيم:
#create array of values
data = [1, 4, 5, 7, 8, 8, 10]
يمكننا استخدام np.mean() و np.average() لحساب القيمة المتوسطة لهذه المصفوفة:
import numpy as np
#calculate average value of array
n.p. mean (data)
6.142857142857143
#calculate average value of array
n.p. average (data)
6.142857142857143
كلا الدالتين ترجعان نفس القيمة بالضبط.
استخدمت كلتا الدالتين الصيغة التالية لحساب المتوسط:
المتوسط = (1 + 4 + 5 + 7 + 8 + 8 + 10) / 7 = 6.142857 …
مثال 2: استخدم np.average() مع الأوزان
لنفترض مرة أخرى أن لدينا المصفوفة التالية في بايثون والتي تحتوي على سبع قيم:
#create array of values
data = [1, 4, 5, 7, 8, 8, 10]
يمكننا استخدام np.average() لحساب المتوسط المرجح لهذه المصفوفة من خلال توفير قائمة القيم لمعلمات الوزن :
import numpy as np
#calculate weighted average of array
n.p. average (data, weights=(.1, .2, .4, .05, .05, .1, .1))
5.45
المتوسط المرجح هو 5.45 .
فيما يلي الصيغة المستخدمة بواسطة np.average() لحساب هذه القيمة:
المتوسط المرجح = 1*.1 + 4*.2 + 5*.4 + 7*.05 + 8*.05 + 8*.1 + 10*.1 = 5.45 .
لاحظ أننا لم نتمكن من استخدام np.mean() لإجراء هذه العملية الحسابية نظرًا لأن هذه الوظيفة لا تحتوي على معلمة وزن .
ارجع إلى وثائق NumPy للحصول على شرح كامل للوظيفتين np.mean() و np.average() .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية حساب القيم المتوسطة الأخرى في بايثون:
كيفية حساب المتوسطات المتحركة في بايثون
كيفية حساب المعدل التراكمي في بايثون