Pandas هي المكتبة الأولى في بايثون للتعامل مع الجداول وتحليل البيانات. جمعت لك هنا أهم ٢٥ أمر، مع مثال لكل واحد تنسخه وتجربه مباشرة 👇
قبل ما تبدأ
ثبّت المكتبة، واستوردها، وجهز جدول صغير تجرب عليه الأمثلة كلها:
pip install pandas
import pandas as pd
df = pd.DataFrame({
"name": ["Sara", "Omar", "Lina"],
"age": [22, 25, 19],
"city": ["Riyadh", "Jeddah", "Riyadh"]
})
قراءة واستكشاف البيانات
Read Data قراءة ملف CSV:
pd.read_csv('file.csv')
View Data عرض أول ٥ صفوف:
df.head()
Info معلومات الجدول: الأعمدة وأنواعها والقيم الفارغة:
df.info()
Summary ملخص إحصائي للأعمدة الرقمية:
df.describe()
هيكل البيانات
Shape عدد الصفوف والأعمدة:
df.shape # (3, 3)
Columns أسماء الأعمدة:
df.columns # Index(['name', 'age', 'city'], dtype='object')
Data Types نوع كل عمود:
df.dtypes # name object # age int64 # city object
Select Column اختيار عمود:
df['age']
Select Multiple اختيار عدة أعمدة:
df[['name', 'age']]
💡 ملاحظة: لاحظ القوسين المربعين عند اختيار عدة أعمدة: الأول للاختيار، والثاني قائمة بأسماء الأعمدة.
التصفية والترتيب
Filter Rows تصفية الصفوف بشرط:
df[df['age'] > 20] # Sara و Omar
Sort Values ترتيب القيم من الأكبر للأصغر:
df.sort_values('age', ascending=False) # Omar أولاً
Boolean Masking تصفية بعدة شروط:
df[(df['age'] > 20) & (df['city'] == 'Riyadh')] # Sara
Unique Values القيم الفريدة في عمود:
df['city'].unique() # ['Riyadh' 'Jeddah']
Value Counts عدّ تكرار كل قيمة:
df['city'].value_counts() # Riyadh 2 # Jeddah 1
💡 ملاحظة: عند استخدام عدة شروط لازم تحط كل شرط بين قوسين، وتستخدم & بدل and، و | بدل or.
التجميع والدمج
Group By تجميع الصفوف حسب عمود:
df.groupby('city')
Aggregation حسابات على المجموعات:
df.groupby('city')['age'].agg(['sum', 'mean'])
Pivot Table الجدول المحوري:
df.pivot_table(values='age', index='city', aggfunc='mean')
Merge دمج جدولين بمفتاح مشترك:
pd.merge(df1, df2, on='id', how='inner')
Concat تكديس جدولين فوق بعض:
pd.concat([df1, df2], axis=0)
💡 ملاحظة: في Concat القيمة axis=0 تكدس الصفوف فوق بعض، وaxis=1 تضم الأعمدة جنب بعض.
تنظيف وتحويل البيانات
Drop حذف أعمدة:
df.drop(columns=['city'])
Rename تغيير أسماء الأعمدة:
df.rename(columns={'old': 'new'})
Handle Missing معالجة القيم الفارغة، إما تعبئتها أو حذف صفوفها:
df.fillna(0) df.dropna()
Apply Function تطبيق دالة على عمود:
df['age'].apply(lambda x: x * 2)
Date/Time تحويل عمود إلى تاريخ:
pd.to_datetime(df['date'])
String Methods دوال النصوص:
df['name'].str.lower() # .upper(), .contains() وغيرها
💡 ملاحظة: أغلب الأوامر هنا ترجع جدول جديد ولا تغيّر الأصلي، فخزّن النتيجة في متغير: df = df.drop(columns=["city"])
تبغى تتعلم Pandas أكثر؟
لو تبغى تتدرب خطوة بخطوة وتتعلم من الصفر، تقدر تشوف دورة شاملة في تحليل البيانات بـ Python على منصة يوديمي، فيها شرح Pandas مع تمارين عملية تطبق فيها هذي الأوامر.
تنبيه: الرابط أعلاه رابط أفلييت، يعني ممكن أحصل على عمولة صغيرة لو اشتركت عن طريقه، بدون أي تكلفة إضافية عليك.
الخلاصة
ما تحتاج تحفظها كلها مرة وحدة. ابدأ بـ read_csv وhead وfilter وgroupby، وبعدها زد أمر جديد كل أسبوع.
📌 احفظ الصفحة وارجع لها وقت ما تحتاجها، وشاركها مع صديق يتعلم Pandas.