الباندا: كيفية إزالة الأعمدة ذات قيم nan


يمكنك استخدام الطرق التالية لإزالة الأعمدة من Pandas DataFrame بقيم NaN:

الطريقة الأولى: إزالة الأعمدة ذات أي قيمة NaN

 df = df. dropna (axis= 1 )

الطريقة الثانية: إزالة الأعمدة التي تحتوي على كافة قيم NaN

 df = df. dropna (axis= 1 ,how=' all ')

الطريقة الثالثة: إزالة الأعمدة ذات الحد الأدنى لعدد قيم NaN

 df = df. dropna (axis= 1 ,thresh= 2 )

توضح الأمثلة التالية كيفية استخدام كل طريقة عمليًا مع الباندا DataFrame التالية:

 import pandas as pd
import numpy as np

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B'],
                   ' position ': [np.nan, 'G', 'F', 'F', 'C', 'G'],
                   ' points ': [11, 28, 10, 26, 6, 25],
                   ' rebounds ': [np.nan, np.nan, np.nan, np.nan, np.nan, np.nan]})

#view DataFrame
print (df)

  team position points rebounds
0 A NaN 11 NaN
1 AG 28 NaN
2 AF 10 NaN
3 BF 26 NaN
4 BC 6 NaN
5 BG 25 NaN

مثال 1: إزالة الأعمدة ذات قيم NaN

يوضح التعليمة البرمجية التالية كيفية إزالة الأعمدة ذات قيم NaN:

 #drop columns with any NaN values
df = df. dropna (axis= 1 )

#view updated DataFrame
print (df)

  team points
0 to 11
1 to 28
2 to 10
3 B 26
4 B 6
5 B 25

لاحظ أنه تمت إزالة أعمدة الموضع والارتدادات لأن كلاهما يحتوي على قيمة NaN واحدة على الأقل.

المثال 2: إزالة الأعمدة التي تحتوي على كافة قيم NaN

يوضح التعليمة البرمجية التالية كيفية إزالة الأعمدة بجميع قيم NaN:

 #drop columns with all NaN values
df = df. dropna (axis= 1 ,how=' all ')

#view updated DataFrame
print (df)

  team position points
0 A NaN 11
1 AG 28
2 AF10
3 BF 26
4 BC 6
5 BG 25

لاحظ أنه تمت إزالة العمود المرتد لأنه كان العمود الوحيد الذي يحتوي على جميع قيم NaN.

المثال 3: إزالة الأعمدة ذات الحد الأدنى لعدد قيم NaN

يوضح التعليمة البرمجية التالية كيفية إزالة الأعمدة التي تحتوي على قيمتين أو أكثر من قيم NaN:

 #drop columns with at least two NaN values
df = df. dropna (axis= 1 ,thresh= 2 )

#view updated DataFrame
print (df)

  team position points
0 A NaN 11
1 AG 28
2 AF10
3 BF 26
4 BC 6
5 BG 25

لاحظ أنه تمت إزالة العمود المرتد لأنه كان العمود الوحيد الذي يحتوي على قيمتين NaN على الأقل.

ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة dropna() في الباندا هنا .

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في الباندا:

كيفية إزالة العمود الأول في الباندا
كيفية إزالة الأعمدة المكررة في الباندا
كيفية حذف جميع الأعمدة باستثناء بعضها في Pandas

Add a Comment

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