كيفية توسيط البيانات في بايثون: مع أمثلة
إن توسيط مجموعة البيانات يعني طرح القيمة المتوسطة لكل ملاحظة فردية في مجموعة البيانات.
بمجرد توسيط مجموعة بيانات، يصبح متوسط قيمة مجموعة البيانات صفرًا.
توضح الأمثلة التالية كيفية توسيط البيانات في بايثون.
المثال 1: توسيط قيم مصفوفة NumPy
لنفترض أن لدينا مجموعة NumPy التالية:
import numpy as np #create NumPy array data = np. array ([4, 6, 9, 13, 14, 17, 18, 19, 19, 21]) #display mean of array print ( data.mean ()) 14.0
يمكننا تحديد دالة لطرح متوسط قيمة المصفوفة من كل ملاحظة على حدة:
#create function to data center
center_function = lambda x: x - x. mean ()
#apply function to original NumPy array
data_centered = center_function(data)
#view updated Array
print (data_centered)
array([-10., -8., -5., -1., 0., 3., 4., 5., 5., 7.])
القيم الناتجة هي القيم المركزية لمجموعة البيانات.
وبما أن متوسط الجدول الأصلي كان 14، فإن هذه الدالة تطرح ببساطة 14 من كل قيمة فردية في الجدول الأصلي.
على سبيل المثال:
- القيمة الأولى للمصفوفة المتمركزة = 4 – 14 = -10
- القيمة الثانية للمصفوفة المتمركزة = 6 – 14 = -8
- القيمة الثالثة في المصفوفة المتمركزة = 9 – 14 = -5
وما إلى ذلك وهلم جرا.
يمكننا أيضًا التحقق من أن متوسط الجدول المركزي هو صفر:
#display mean of centered array print ( data_centered.mean ()) 0.0
مثال 2: توسيط أعمدة Pandas DataFrame
لنفترض أن لدينا DataFrame الباندا التالية:
import pandas as pd #createDataFrame df = pd. DataFrame ({' x ': [1, 4, 5, 6, 6, 8, 9], ' y ': [7, 7, 8, 8, 8, 9, 12], ' z ': [3, 3, 4, 4, 6, 7, 7]}) #view DataFrame print (df) X Y Z 0 1 7 3 1 4 7 3 2 5 8 4 3 6 8 4 4 6 8 6 5 8 9 7 6 9 12 7
يمكننا استخدام وظيفة pandas Apply() لتوسيط قيم كل عمود في DataFrame:
#center the values in each column of the DataFrame df_centered = df. apply ( lambda x: xx.mean ()) #view centered DataFrame print (df_centered) X Y Z 0 -4.571429 -1.428571 -1.857143 1 -1.571429 -1.428571 -1.857143 2 -0.571429 -0.428571 -0.857143 3 0.428571 -0.428571 -0.857143 4 0.428571 -0.428571 1.142857 5 2.428571 0.571429 2.142857 6 3.428571 3.571429 2.142857
يمكننا بعد ذلك التحقق من أن متوسط قيمة كل عمود هو صفر:
#display mean of each column in the DataFrame df_centered. mean () x 2.537653e-16 y-2.537653e-16 z 3.806479e-16 dtype:float64
يتم عرض متوسطات الأعمدة بالترميز العلمي، ولكن كل قيمة تكون صفرًا بشكل أساسي.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ العمليات الشائعة الأخرى في بايثون:
كيفية حساب المتوسط المقلص في بايثون
كيفية حساب متوسط الخطأ المربع (MSE) في بايثون
كيفية حساب متوسط الأعمدة المحددة في الباندا