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