Wie verwende ich „ist nicht null“? in pandas (mit beispielen)


Sie können die Funktion pandas notnull() verwenden, um zu testen, ob die Elemente eines pandas DataFrame null sind oder nicht.

Wenn ein Element gleich NaN oder None ist, gibt die Funktion False zurück.

Andernfalls gibt die Funktion True zurück.

Hier sind einige gängige Möglichkeiten, diese Funktion in der Praxis zu verwenden:

Methode 1: Zeilen ohne Nullwerte in einer Spalte filtern

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

Methode 2: Zeilen ohne Nullwerte in einer bestimmten Spalte filtern

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

Methode 3: Zählen Sie die Anzahl der Werte ungleich Null in jeder Spalte

 df. notnull (). sum ()

Methode 4: Zählen Sie die Anzahl der Werte ungleich Null im gesamten DataFrame

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

Die folgenden Beispiele zeigen, wie jede Methode in der Praxis mit dem folgenden Pandas DataFrame verwendet wird:

 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

Beispiel 1: Zeilen ohne Nullwerte in einer Spalte filtern

Der folgende Code zeigt, wie der DataFrame so gefiltert wird, dass in einer Spalte nur Zeilen ohne Nullwerte angezeigt werden:

 #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

Beachten Sie, dass jede der Zeilen in diesem gefilterten DataFrame in keiner Spalte Nullwerte aufweist.

Beispiel 2: Zeilen ohne Nullwerte in einer bestimmten Spalte filtern

Der folgende Code zeigt, wie der DataFrame so gefiltert wird, dass in der Hilfsspalte nur Zeilen ohne Nullwerte angezeigt werden:

 #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

Beachten Sie, dass jede der Zeilen in diesem gefilterten DataFrame keine Nullwerte in der Helper- Spalte hat.

Beispiel 3: Zählen Sie die Anzahl der Werte ungleich Null in jeder Spalte

Der folgende Code zeigt, wie die Anzahl der Nicht-Null-Werte in jeder Spalte des DataFrame gezählt wird:

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

team 8
points 7
assists 6
rebounds 7
dtype: int64

Aus dem Ergebnis können wir sehen:

  • Die Teamspalte enthält 8 Werte ungleich Null.
  • Die Punktespalte enthält 7 Werte ungleich Null.
  • Die Assists- Spalte enthält 6 Werte ungleich Null.
  • Die Spalte „Bounces“ enthält 7 Werte ungleich Null.

Beispiel 4: Zählen Sie die Anzahl der Werte ungleich Null im gesamten DataFrame

Der folgende Code zeigt, wie die Anzahl der Nicht-Null-Werte im gesamten DataFrame gezählt wird:

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

28

Aus der Ausgabe können wir ersehen, dass es im gesamten DataFrame 28 Werte ungleich Null gibt.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie andere gängige Filtervorgänge in Pandas durchgeführt werden:

So filtern Sie einen Pandas DataFrame nach Spaltenwerten
So filtern Sie „Enthält nicht“ in Pandas
So filtern Sie einen Pandas DataFrame nach mehreren Bedingungen

Einen Kommentar hinzufügen

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