يُعدّ Pandas حجر الزاوية في معالجة البيانات في Python، وفهم كيفية العمل بكفاءة مع DataFrames الخاصة به أمر بالغ الأهمية. تتضمن مهمة متكررة تحديد عدد الصفوف داخل DataFrame. تستعرض هذه المقالة طرقًا مختلفة لتحقيق ذلك، لتناسب السيناريوهات والتفضيلات المختلفة.
جدول المحتويات
- استخدام سمة
shape
- استخدام دالة
len()
- عد الصفوف بناءً على الشروط
- اعتبارات الأداء
- معالجة DataFrames الفارغة
- العمل مع Pandas Series
استخدام سمة shape
توفر سمة shape
طريقة مباشرة وفعالة لاسترداد أبعاد DataFrame. إنها تُرجع مجموعة حيث يمثل العنصر الأول عدد الصفوف، والثاني عدد الأعمدة.
import pandas as pd
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6]}
df = pd.DataFrame(data)
row_count = df.shape[0]
print(f"يحتوي DataFrame على {row_count} صفوفًا.")
استخدام دالة len()
توفر دالة len()
المدمجة بديلاً أكثر إيجازًا وقابلية للقراءة. عند استخدامها مع DataFrame، فإنها تُرجع مباشرةً عدد الصفوف.
import pandas as pd
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6]}
df = pd.DataFrame(data)
row_count = len(df)
print(f"يحتوي DataFrame على {row_count} صفوفًا.")
عد الصفوف بناءً على الشروط
في كثير من الأحيان، تحتاج إلى عد الصفوف التي تلبي معايير محددة. يُعالِج الفهرسة المنطقية جنبًا إلى جنب مع طريقة sum()
هذا ببراعة.
import pandas as pd
data = {'col1': [1, 2, 3, 4, 5], 'col2': [10, 20, 30, 40, 50]}
df = pd.DataFrame(data)
# عد الصفوف حيث col1 أكبر من 2
row_count = (df['col1'] > 2).sum()
print(f"يوجد {row_count} صفوفًا حيث col1 > 2.")
#شروط متعددة
row_count = ((df['col1'] > 2) & (df['col2'] 2 و col2 < 40.")
اعتبارات الأداء
على الرغم من أن كل من shape
و len()
فعالان للغاية، إلا أن shape
غالبًا ما يتمتع بميزة طفيفة في السرعة، خاصةً مع DataFrames كبيرة جدًا. ومع ذلك، فإن الفرق غالبًا ما يكون ضئيلاً في معظم التطبيقات العملية. يعتمد تأثير الأداء على العد الشرطي بشكل كبير على تعقيد الشرط وحجم DataFrame.
معالجة DataFrames الفارغة
تتعامل جميع الطرق الموضحة أعلاه بشكل أنيق مع DataFrames الفارغة، حيث تُرجع عدد صفوف يساوي 0 بشكل صحيح.
العمل مع Pandas Series
تعمل دالة len()
بسلاسة مع Pandas Series، حيث توفر مباشرةً عدد العناصر. تُرجع سمة shape
مجموعة (n,)
، حيث n
هو الطول. كما تنطبق الفهرسة المنطقية و sum()
بشكل فعال على Series لعد الشرطي.
يُزوّدك هذا الدليل الشامل بتقنيات متعددة الاستخدامات لتحديد عدد الصفوف بكفاءة في Pandas DataFrames، مما يُمكّنك من إجراء تحليل بيانات فعال.