كيفية تحديد الصفوف ذات قيم nan في الباندا (مع أمثلة)
يمكنك استخدام الطرق التالية لتحديد الصفوف ذات قيم NaN في الباندا:
الطريقة الأولى: تحديد الصفوف ذات قيم NaN في أي عمود
df. loc [df. isnull (). any (axis= 1 )]
الطريقة الثانية: تحديد الصفوف ذات قيم NaN في عمود معين
df. loc [df[' this_column ']. isnull ()]
توضح الأمثلة التالية كيفية استخدام كل طريقة عمليًا مع الباندا DataFrame التالية:
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, np.NaN, 19, 14, 14, 11, 20, 28], ' assists ': [5, 7, 7, 9, np.NaN, 9, 9, np.NaN], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, np.NaN]}) #view DataFrame print (df)
مثال 1: حدد الصفوف ذات قيم NaN في أي عمود
يمكننا استخدام بناء الجملة التالي لتحديد الصفوف ذات قيم NaN في أي عمود من DataFrame:
#create new DataFrame that only contains rows with NaNs in any column df_nan_rows = df. loc [df. isnull (). any (axis= 1 )] #view results print (df_nan_rows) team points assists rebounds 1 B NaN 7.0 8.0 4 E 14.0 NaN 6.0 7 H 28.0 NaN NaN
لاحظ أن كل صف من DataFrame الناتج يحتوي على قيمة NaN في عمود واحد على الأقل.
المثال 2: تحديد الصفوف ذات قيم NaN في عمود معين
يمكننا استخدام بناء الجملة التالي لتحديد الصفوف ذات قيم NaN في العمود المساعد في DataFrame:
#create new DataFrame that only contains rows with NaNs in assists column df_assists_nans = df. loc [df[' assists ']. isnull ()] #view results print (df_assists_nans) team points assists rebounds 4 E 14.0 NaN 6.0 7 H 28.0 NaN NaN
لاحظ أن كل صف من DataFrame الناتج يحتوي على قيمة NaN في العمود المساعد .
يوجد صف بقيمة NaN في عمود النقاط ، ولكن لم يتم تحديد هذا الصف لأنه لا يحتوي أيضًا على قيمة NaN في عمود المساعدة .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في الباندا:
الباندا: كيفية حذف الصفوف ذات قيم NaN
الباندا: كيفية استبدال قيم NaN بسلسلة
الباندا: كيفية ملء قيم NaN بالمتوسط