كيفية الحصول على أرقام الصفوف في pandas dataframe
في كثير من الأحيان قد ترغب في الحصول على أرقام الصفوف في DataFrame الباندا التي تحتوي على قيمة معينة.
لحسن الحظ، من السهل القيام بذلك باستخدام الدالة .index .
يوضح هذا البرنامج التعليمي عدة أمثلة للاستخدام العملي لهذه الوظيفة.
مثال 1: الحصول على أرقام الصفوف التي تتوافق مع قيمة معينة
لنفترض أن لدينا DataFrame الباندا التالية:
import pandas as pd #createDataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'team': ['Mavs', 'Mavs', 'Spurs', 'Celtics', 'Warriors']}) #view DataFrame print (df) team assists points 0 25 5 Mavs 1 12 7 Mavs 2 15 7 Spurs 3 14 9 Celtics 4 19 12 Warriors
يمكننا استخدام بناء الجملة التالي للحصول على أرقام الأسطر حيث يساوي “الفريق” Mavs:
#get row numbers where 'team' is equal to Mavs df[df[' team '] == ' Mavs ']. index Int64Index([0, 1], dtype='int64')
يمكننا أن نرى أن اسم الفريق يساوي “Mavs” في السطرين 0 و 1 .
يمكننا أيضًا الحصول على أرقام الأسطر التي يوجد بها اسم الفريق في قائمة معينة من أسماء الفرق:
#get row numbers where 'team' is equal to Mavs or Spurs filter_list = [' Mavs ', ' Spurs '] #return only rows where team is in the list of team names df[df. team . isin (filter_list)]. index Int64Index([0, 1, 2], dtype='int64')
يمكننا أن نرى أن اسم الفريق يساوي “Mavs” أو “Spurs” في مؤشرات الصفوف 0 و 1 و 2 .
مثال 2: الحصول على رقم صف فريد
لنفترض أن لدينا DataFrame الباندا التالية:
import pandas as pd #createDataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'team': ['Mavs', 'Mavs', 'Spurs', 'Celtics', 'Warriors']})
إذا كنت تعلم أن صفًا واحدًا يطابق قيمة معينة، فيمكنك استرداد رقم الصف الفريد هذا باستخدام بناء الجملة التالي:
#get the row number where team is equal to Celtics df[df[' team '] == ' Celtics ']. index [ 0 ] 3
يمكننا أن نرى أن الفريق يساوي “سلتكس” في فهرس الصف رقم 3 .
مثال 3: احصل على مجموع أرقام الأسطر
لنفترض أن لدينا DataFrame الباندا التالية:
import pandas as pd #createDataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'team': ['Mavs', 'Mavs', 'Spurs', 'Celtics', 'Warriors']})
إذا كنت تريد معرفة العدد الإجمالي للصفوف التي يساوي فيها العمود قيمة معينة، فيمكنك استخدام بناء الجملة التالي:
#find total number of rows where team is equal to Mavs len (df[df[' team '] == ' Celtics ']. index ) 2
يمكننا أن نرى أن هذا الفريق يساوي “Mavs” في إجمالي سطرين .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في الباندا:
كيفية العثور على قيم فريدة في أعمدة متعددة في Pandas
كيفية تصفية Pandas DataFrame بشروط متعددة
كيفية حساب القيم المفقودة في Pandas DataFrame