كيفية الحصول على أرقام الصفوف في 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

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *