Hoe gebruik je "is niet null"? in panda's (met voorbeelden)


U kunt de functie pandas notnull() gebruiken om te testen of de elementen van een pandas DataFrame null zijn of niet.

Als een element gelijk is aan NaN of Geen, retourneert de functie False .

Anders retourneert de functie True .

Hier volgen enkele veelvoorkomende manieren om deze functie in de praktijk te gebruiken:

Methode 1: Filter rijen zonder nulwaarden in welke kolom dan ook

 df[df. notnull (). all ( 1 )]

Methode 2: Filter rijen zonder nulwaarden in een specifieke kolom

 df[df[[' this_column ']]. notnull (). all ( 1 )]

Methode 3: Tel het aantal niet-nulwaarden in elke kolom

 df. notnull (). sum ()

Methode 4: Tel het aantal niet-nulwaarden in het gehele DataFrame

 df. notnull (). sum (). sum ()

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', 'H'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, np.nan],
                   ' assists ': [5, np.nan, 7, 9, 12, 9, 9, np.nan],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, np.nan, 12]})

#view DataFrame
print (df)

  team points assists rebounds
0 A 18.0 5.0 11.0
1 B 22.0 NaN 8.0
2 C 19.0 7.0 10.0
3D 14.0 9.0 6.0
4 E 14.0 12.0 6.0
5 F 11.0 9.0 5.0
6G 20.0 9.0 NaN
7 H NaN NaN 12.0

Voorbeeld 1: Filter rijen zonder nulwaarden in een willekeurige kolom

De volgende code laat zien hoe u het DataFrame kunt filteren om in elke kolom alleen rijen zonder nulwaarden weer te geven:

 #filter for rows with no null values in any column
df[df. notnull (). all ( 1 )]


        team points assists rebounds
0 A 18.0 5.0 11.0
2 C 19.0 7.0 10.0
3D 14.0 9.0 6.0
4 E 14.0 12.0 6.0
5 F 11.0 9.0 5.0

Houd er rekening mee dat elk van de rijen in dit gefilterde DataFrame in geen enkele kolom nulwaarden heeft.

Voorbeeld 2: Filter rijen zonder nulwaarden in een specifieke kolom

De volgende code laat zien hoe u het DataFrame kunt filteren om alleen rijen zonder nulwaarden in de helperkolom weer te geven:

 #filter for rows with no null values in the 'assists' column
df[df[[' assists ']]. notnull (). all ( 1 )]

	team points assists rebounds
0 A 18.0 5.0 11.0
2 C 19.0 7.0 10.0
3D 14.0 9.0 6.0
4 E 14.0 12.0 6.0
5 F 11.0 9.0 5.0
6G 20.0 9.0 NaN

Houd er rekening mee dat elk van de rijen in dit gefilterde DataFrame geen nulwaarden heeft in de Helper- kolom.

Voorbeeld 3: Tel het aantal niet-nulwaarden in elke kolom

De volgende code laat zien hoe u het aantal niet-nulwaarden in elke kolom van het DataFrame telt:

 #count number of non-null values in each column
df. notnull (). sum ()

team 8
points 7
assists 6
rebounds 7
dtype: int64

Uit het resultaat kunnen we zien:

  • De teamkolom heeft 8 waarden die niet nul zijn.
  • De puntenkolom heeft 7 waarden die niet nul zijn.
  • De assists- kolom heeft zes waarden die niet nul zijn.
  • De bouncekolom bevat zeven waarden die niet nul zijn.

Voorbeeld 4: Tel het aantal niet-nulwaarden in het gehele DataFrame

De volgende code laat zien hoe u het aantal niet-nulwaarden in het gehele DataFrame telt:

 #count number of non-null values in entire DataFrame
df. notnull (). sum (). sum ()

28

Uit de uitvoer kunnen we zien dat er 28 niet-nulwaarden in het gehele DataFrame zijn.

Aanvullende bronnen

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

Hoe u een Pandas DataFrame filtert op kolomwaarden
Hoe u “Bevat niet” filtert in Panda’s
Hoe u een Pandas DataFrame op meerdere voorwaarden kunt filteren

Einen Kommentar hinzufügen

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