Data Science

إزالة الأعمدة من جداول بيانات Pandas بكفاءة

Spread the love

إزالة الأعمدة بكفاءة من جداول بيانات Pandas

تُعد جداول بيانات Pandas حجر الزاوية في معالجة البيانات في Python. غالبًا ما ستحتاج إلى إزالة الأعمدة غير ذات الصلة بتحليلك الحالي. تُفصّل هذه المقالة عدة طرق لحذف الأعمدة بكفاءة من جداول بيانات Pandas الخاصة بك، مع توفير أمثلة واضحة وتسليط الضوء على أفضل الممارسات.

جدول المحتويات:

استخدام طريقة drop()

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


import pandas as pd

# جدول بيانات نموذجي
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6], 'col3': [7, 8, 9]}
df = pd.DataFrame(data)
print("جدول البيانات الأصلي:n", df)

# حذف 'col2' وإنشاء جدول بيانات جديد
df_dropped = df.drop('col2', axis=1)  # axis=1 يُحدد حذف العمود
print("nجدول البيانات بعد حذف 'col2' (جدول بيانات جديد):n", df_dropped)

# حذف 'col3' في مكانه
df.drop('col3', axis=1, inplace=True)
print("nجدول البيانات بعد حذف 'col3' (في مكانه):n", df)

axis=1 أمر بالغ الأهمية، حيث يشير إلى حذف العمود (axis=0 مخصص للصفوف). inplace=True يُعدّل جدول البيانات الأصلي؛ خلاف ذلك، يتم إرجاع نسخة.

حذف أعمدة متعددة

تتعامل drop() بسهولة مع أعمدة متعددة. ما عليك سوى تقديم قائمة بأسماء الأعمدة.


import pandas as pd

data = {'col1': [1, 2, 3], 'col2': [4, 5, 6], 'col3': [7, 8, 9], 'col4': [10, 11, 12]}
df = pd.DataFrame(data)

# حذف أعمدة متعددة
df_dropped = df.drop(['col2', 'col4'], axis=1)
print("nجدول البيانات بعد حذف أعمدة متعددة:n", df_dropped)

استخدام كلمة del المفتاحية

توفر del طريقة موجزة لإزالة عمود واحد، لكنها تُعدّل جدول البيانات مباشرةً دون إنشاء نسخة. استخدمها بحذر!


import pandas as pd

data = {'col1': [1, 2, 3], 'col2': [4, 5, 6], 'col3': [7, 8, 9]}
df = pd.DataFrame(data)

# حذف 'col2' باستخدام del
del df['col2']
print("nجدول البيانات بعد حذف 'col2' باستخدام del:n", df)

استخدام طريقة pop()

تزيل pop() عمودًا وتعيده كمتسلسلة Pandas. مفيد عندما تحتاج إلى كل من العمود المحذوف وجدول البيانات المُعدّل.


import pandas as pd

data = {'col1': [1, 2, 3], 'col2': [4, 5, 6], 'col3': [7, 8, 9]}
df = pd.DataFrame(data)

# حذف 'col2' باستخدام pop()
popped_column = df.pop('col2')
print("nجدول البيانات بعد إخراج 'col2':n", df)
print("nالعمود المُخرج:n", popped_column)

أفضل الممارسات والاعتبارات

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

الأسئلة الشائعة

  • س: ماذا يحدث إذا حاولت حذف عمود غير موجود؟
    ج: يتم إثارة KeyError بواسطة كل من drop() و del.
  • س: هل يمكنني حذف الأعمدة بناءً على شرط؟
    ج: نعم، أنشئ جدول بيانات جديدًا يحتوي فقط على الأعمدة المطلوبة باستخدام الفهرسة المنطقية أو تحديد العمود.
  • س: هل يوجد فرق في الأداء بين هذه الطرق؟
    ج: بالنسبة للأعمدة المفردة، تكون الاختلافات عادةً ضئيلة. بالنسبة للأعمدة المتعددة، تكون drop() بشكل عام أكثر كفاءة.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *