كيفية استخدام بانداس وماتبلوتليب لإجراء تحليل الاستقصاء الإحصائي في بايثون

تحليل البيانات الاستكشافي (EDA) هو خطوة أساسية في أي مشروع علم البيانات، حيث يسمح لنا بفهم البيانات، كشف الأنماط، وتحديد المشكلات المحتملة. في هذا المقال، سنستكشف كيفية استخدام مكتبتين شهيرتين في Python، Pandas و Matplotlib، لإجراء EDA. تعتبر Pandas مكتبة قوية للتلاعب بالبيانات والتحليل، بينما تعد Matplotlib مكتبة مرنة لتصور البيانات. سنغطي أساسيات تحميل البيانات في DataFrame باستخدام Pandas، استكشاف البيانات باستخدام وظائف Pandas، تنظيف البيانات، وأخيراً، تصور البيانات باستخدام Matplotlib. في نهاية هذا المقال، سيكون لديك فهم صحيح لكيفية استخدام Pandas و Matplotlib لإجراء EDA في Python.

استيراد المكتبات والبيانات

استيراد المكتبات

لاستخدام مكتبتي Pandas و Matplotlib في رمز Python الخاص بك، تحتاج أولاً إلى استيرادهما. يمكنك القيام بذلك باستخدام عبارة import متبوعة باسم المكتبة.

Python

 

python import pandas as pd
import matplotlib.pyplot as plt

في هذا المثال، نقوم باستيراد Pandas ونسميها ‘pd’، وهو اتفاق شائع في مجتمع علم البيانات. نقوم أيضاً باستيراد matplotlib.pyplot ونسميها ‘plt’. باستيراد هذه المكتبات، يمكننا استخدام وظائفها وطرقها للعمل مع البيانات وإنشاء تصورات.

تحميل البيانات

بمجرد استيراد المكتبات الضرورية، يمكنك تحميل البيانات في إطار بيانات pandas. توفر pandas عدة طرق لتحميل البيانات من تنسيقات ملفات مختلفة، بما في ذلك CSV، Excel، JSON، وأكثر. الطريقة الأكثر شيوعًا هي read_csv، التي تقرأ البيانات من ملف CSV وتعيد إطار بيانات.

Python

 

python# Load data into a pandas DataFrame
data = pd.read_csv('path/to/data.csv')

في هذا المثال، نقوم بتحميل البيانات من ملف CSV الموجود في ‘path/to/data.csv’ وتخزينها في متغير يسمى ‘data’. يمكنك استبدال ‘path/to/data.csv’ بالمسار الفعلي لملف البيانات الخاص بك.

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

استكشاف البيانات

head() و tail()

تستخدم وظائف head() وtail() لعرض الصفوف الأولى والأخيرة من البيانات على التوالي. بشكل افتراضي، تعرض هذه الوظائف أول/آخر خمسة صفوف من البيانات، ولكن يمكنك تحديد عدد صفوف مختلف كوسيطة.

Python

 

python# View the first 5 rows of the data
print(data.head()) 
# عرض آخر 10 صفوف من البيانات
print(data.tail(10))

info()

توفر وظيفة info() معلومات حول إطار البيانات، بما في ذلك عدد الصفوف والأعمدة، وأنواع البيانات لكل عمود، وعدد القيم غير الفارغة. تعتبر هذه الوظيفة مفيدة لتحديد القيم المفقودة وتحديد الأنواع المناسبة للبيانات لكل عمود.

Python

 

python# Get information about the data
print(data.info())

describe()

توفر الدالة describe() إحصائيات موجزة للأعمدة العددية في DataFrame، بما في ذلك العدد، المتوسط، الانحراف المعياري، الحد الأدنى، الحد الأقصى، والرباعيات. تعد هذه الدالة مفيدة للحصول على لمحة سريعة عن توزيع البيانات.

Python

 

python# Get summary statistics for the data
print(data.describe())

value_counts()

تُستخدم الدالة value_counts() لحساب عدد المرات التي يحدث فيها كل قيمة فريدة في عمود. تعد هذه الدالة مفيدة لتحديد تكرار القيم المحددة في البيانات.

Python

 

python# Count the number of unique values in a column
print(data['column_name'].value_counts())

هذه مجرد بعض الأمثلة على وظائف باندا التي يمكنك استخدامها لاستكتشاف البيانات. هناك العديد من الوظائف الأخرى التي يمكنك استخدامها حسب احتياجاتك الخاصة لاستكتشاف البيانات، مثل isnull() للتحقق من القيم المفقودة، وgroupby() لتجميع البيانات حسب عمود معين، وcorr() لحساب معاملات الارتباط بين الأعمدة وغيرها.

تنظيف البيانات 

isnull()

تُستخدم الدالة isnull() للتحقق من وجود قيم مفقودة أو فارغة في DataFrame. تُرجع DataFrame بنفس شكل الأصلي، مع قيم True حيث تكون البيانات مفقودة وقيم False حيث تكون البيانات موجودة. يمكنك استخدام الدالة sum() لحساب عدد القيم المفقودة في كل عمود.

Python

 

python# Check for missing values
print(data.isnull().sum())

dropna()

تستخدم الدالة dropna() لإزالة صفوف أو أعمدة تحتوي على قيم غير موجودة أو فارغة. بشكل افتراضي، تزيل هذه الدالة أي صف يحتوي على قيمة واحدة على الأقل غير موجودة. يمكنك استخدام وسيطة subset لتحديد الأعمدة التي يجب التحقق منها للقيم المفقودة ووسيطة how لتحديد ما إذا كان يجب إزالة الصفوف التي تحتوي على أي قيم مفقودة أو فقط الصفوف التي تكون فيها جميع القيم مفقودة.

Python

 

python# Drop rows with missing values
data = data.dropna()

drop_duplicates()

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

Python

 

python# Drop duplicate rows
data = data.drop_duplicates()

replace()

تستخدم الدالة replace() لاستبدال القيم في عمود بقيم جديدة. يمكنك تحديد القيمة القديمة التي يجب استبدالها والقيمة الجديدة التي يجب استبدالها بها. تعد هذه الدالة مفيدة للتعامل مع مشاكل جودة البيانات مثل الهجاء الخاطئ أو التنسيق غير المتسق.

Python

 

python# Replace values in a column
data['column_name'] = data['column_name'].replace('old_value', 'new_value')

هذه مجرد أمثلة على وظائف pandas التي يمكنك استخدامها لتنظيف البيانات. هناك العديد من الوظائف الأخرى التي يمكنك استخدامها حسب احتياجاتك الخاصة في تنظيف البيانات، مثل fillna() لملء القيم المفقودة بقيمة أو طريقة معينة، astype() لتحويل أنواع بيانات الأعمدة، clip() لقص القيم الخارجية المتطرفة وأكثر من ذلك.

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

تصور البيانات

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

فيما يلي بعض الأمثلة على كيفية إنشاء هذه الأنواع من التصورات باستخدام Matplotlib:

رسم بياني بالنقاط

A scatter plot is used to visualize the relationship between two continuous variables. You can create a scatter plot in Matplotlib using the scatter() function.

Python

 

python# Create a scatter plot
plt.scatter(data['column1'], data['column2']) plt.xlabel('Column 1') plt.ylabel('Column 2') plt.show()

في هذا المثال، نقوم بإنشاء رسم بياني بالنقاط باستخدام column1 على المحور x وcolumn2 على المحور y. نضيف أيضًا تسميات للمحور x والمحور y باستخدام وظائف xlabel() وylabel().

مدرج تكراري

A histogram is used to visualize the distribution of a single continuous variable. You can create a histogram in Matplotlib using the hist() function.

Python

 

python# Create a histogram
plt.hist(data['column'], bins=10) plt.xlabel('Column') plt.ylabel('Frequency') plt.show()

في هذا المثال، نقوم بإنشاء تمثيل بياني لمتغير العمود باستخدام 10 حاويات. نقوم أيضًا بإضافة تسميات لمحور الـ x ومحور الـ y باستخدام وظائف xlabel() وylabel().

رسم مبر盒

A box plot is used to visualize the distribution of a single continuous variable and to identify outliers. You can create a box plot in Matplotlib using the boxplot() function.

Python

 

python# Create a box plot
plt.boxplot(data['column']) plt.ylabel('Column') plt.show()

في هذا المثال، نقوم بإنشاء رسم مبر盒 لمتغير العمود. نقوم أيضًا بإضافة تسمية لمحور الـ y باستخدام وظيفة ylabel().

هذه مجرد أمثلة عديدة لما يمكنك القيام به باستخدام Matplotlib للتصور البياني للبيانات. هناك العديد من الوظائف والتقنيات الأخرى التي يمكنك استخدامها، اعتمادًا على متطلبات المشروع الخاصة بك.

الخاتمة

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

Source:
https://dzone.com/articles/how-to-use-pandas-and-matplotlib-to-perform-explor