Pandy: jak usunąć kolumny z wartościami nan


Możesz użyć następujących metod, aby usunąć kolumny z ramki danych pand z wartościami NaN:

Metoda 1: Usuń kolumny z dowolną wartością NaN

 df = df. dropna (axis= 1 )

Metoda 2: Usuń kolumny ze wszystkimi wartościami NaN

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

Metoda 3: Usuń kolumny z minimalną liczbą wartości NaN

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

Poniższe przykłady pokazują, jak w praktyce używać każdej metody z następującą ramką DataFrame pand:

 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

Przykład 1: Usuń kolumny z wartościami NaN

Poniższy kod pokazuje, jak usunąć kolumny z wartościami 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

Należy zauważyć, że kolumny pozycji i odbić zostały usunięte, ponieważ obie miały co najmniej jedną wartość NaN.

Przykład 2: Usuń kolumny ze wszystkimi wartościami NaN

Poniższy kod pokazuje, jak usunąć kolumny ze wszystkimi wartościami 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

Należy zauważyć, że kolumna „odbicia” została usunięta, ponieważ była to jedyna kolumna zawierająca wszystkie wartości NaN.

Przykład 3: Usuń kolumny z minimalną liczbą wartości NaN

Poniższy kod pokazuje, jak usunąć kolumny zawierające dwie lub więcej wartości 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

Należy zauważyć, że kolumna „odbicia” została usunięta, ponieważ była to jedyna kolumna zawierająca co najmniej dwie wartości NaN.

Uwaga : pełną dokumentację funkcji dropna() w pandach znajdziesz tutaj .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w pandach:

Jak usunąć pierwszą kolumnę w Pandach
Jak usunąć zduplikowane kolumny w Pandach
Jak usunąć wszystkie kolumny z wyjątkiem niektórych w Pandach

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *