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

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert