Hoe rijen zonder nan-waarden in panda's te selecteren


U kunt de volgende methoden gebruiken om rijen zonder NaN-waarden in panda’s te selecteren:

Methode 1: Selecteer rijen zonder NaN-waarden in alle kolommen

 df[~df. isnull (). any (axis= 1 )]

Methode 2: Selecteer rijen zonder NaN-waarden in een specifieke kolom

 df[~df[' this_column ']. isna ()]

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', 'B', 'C', 'D', 'E', 'F', 'G'],
                   ' points ': [np.nan, 12, 15, 25, np.nan, 22, 30],
                   ' assists ': [4, np.nan, 5, 9, 12, 14, 10]})

#view DataFrame
print (df)

  team points assists
0 A NaN 4.0
1 B 12.0 NaN
2C 15.0 5.0
3D 25.0 9.0
4 E NaN 12.0
5F 22.0 14.0
6G 30.0 10.0

Voorbeeld 1: Selecteer rijen zonder NaN-waarden in alle kolommen

We kunnen de volgende syntaxis gebruiken om rijen zonder NaN-waarden in elke kolom van het DataFrame te selecteren:

 #create new DataFrame that only contains rows without NaNs
no_nans = df[~df. isnull (). any (axis= 1 )]

#view results
print (no_nans)

  team points assists
2C 15.0 5.0
3D 25.0 9.0
5F 22.0 14.0
6G 30.0 10.0   

Houd er rekening mee dat elke rij van het resulterende DataFrame in geen enkele kolom NaN-waarden bevat.

Voorbeeld 2: Selecteer rijen zonder NaN-waarden in een specifieke kolom

We kunnen de volgende syntaxis gebruiken om rijen zonder NaN-waarden te selecteren in de puntenkolom van het DataFrame:

 #create new DataFrame that only contains rows without NaNs in points column
no_points_nans = df[~df[' points ']. isna ()]

#view results
print (no_points_nans)

  team points assists
1 B 12.0 NaN
2C 15.0 5.0
3D 25.0 9.0
5F 22.0 14.0
6G 30.0 10.0

Houd er rekening mee dat elke rij van het resulterende DataFrame geen NaN-waarden bevat in de puntenkolom .

Er is een rij met een NaN-waarde in de kolom Assists , maar de rij blijft behouden in het DataFrame omdat de waarde in de kolom Punten van die rij niet NaN is.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in panda’s kunt uitvoeren:

Panda’s: rijen met NaN-waarden verwijderen
Panda’s: hoe NaN-waarden te vervangen door een string
Panda’s: hoe NaN-waarden met gemiddelde vullen

Einen Kommentar hinzufügen

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