Panda's: kolommen met nan-waarden verwijderen
U kunt de volgende methoden gebruiken om kolommen uit een Panda DataFrame met NaN-waarden te verwijderen:
Methode 1: Kolommen met elke NaN-waarde verwijderen
df = df. dropna (axis= 1 )
Methode 2: Kolommen met alle NaN-waarden verwijderen
df = df. dropna (axis= 1 ,how=' all ')
Methode 3: Kolommen verwijderen met een minimaal aantal NaN-waarden
df = df. dropna (axis= 1 ,thresh= 2 )
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met de volgende panda’s 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
Voorbeeld 1: Kolommen met NaN-waarden verwijderen
De volgende code laat zien hoe u kolommen met NaN-waarden verwijdert:
#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
Merk op dat de kolommen positie en rebounds zijn verwijderd omdat ze allebei ten minste één NaN-waarde hadden.
Voorbeeld 2: Verwijder kolommen met alle NaN-waarden
De volgende code laat zien hoe u kolommen met alle NaN-waarden verwijdert:
#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
Houd er rekening mee dat de kolom ‚Buitenposten‘ is verwijderd omdat dit de enige kolom was met alle NaN-waarden.
Voorbeeld 3: Kolommen verwijderen met een minimumaantal NaN-waarden
De volgende code laat zien hoe u kolommen met twee of meer NaN-waarden verwijdert:
#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
Houd er rekening mee dat de kolom ‚Buitenposten‘ is verwijderd omdat dit de enige kolom was met ten minste twee NaN-waarden.
Opmerking : u kunt hier de volledige documentatie van de dropna() -functie in panda’s vinden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in panda’s kunt uitvoeren:
Hoe de eerste kolom in Panda’s te verwijderen
Hoe dubbele kolommen in Pandas te verwijderen
Hoe alle kolommen te verwijderen behalve enkele in Pandas