Überprüfen Sie, ob eine Zelle in Pandas leer ist
-
Verwenden Sie die Funktion
isnull()
, um zu prüfen, ob die Zelle leer ist -
Verwenden Sie die Funktion
any
(), um zu prüfen, ob die Zelle leer ist -
Verwenden Sie die
isnan
-Funktion, um zu prüfen, ob die Zelle leer ist
Leere Daten sind schlecht und nicht gut, wenn wir nützliche Informationen vergleichen, kombinieren oder extrahieren müssen, daher ist es wichtig zu wissen, ob sie existieren.
Wenn wir unsere CSV-Daten als Datenrahmen in Pandas laden, ist jedes Datenelement in einer Zelle vorhanden, und jede leere Zelle steht für leere Daten. In diesem Artikel zeigen wir Ihnen drei Ansätze, mit denen wir überprüfen können, ob eine Zelle in Pandas
leer ist.
Verwenden Sie die Funktion isnull()
, um zu prüfen, ob die Zelle leer ist
Um die Funktionen in Aktion zu zeigen, erstellen wir einen Pandas-Datenrahmen in einigen leeren Zellen.
Code:
import pandas as pd
import numpy as np
df = pd.DataFrame([[1, 2, 3], [3, 4], [3, 4, 5, 6]], columns=list("ABCD"))
print(df)
Ausgang:
A B C D
0 1 2 3.0 NaN
1 3 4 NaN NaN
2 3 4 5.0 6.0
Jetzt, da wir einen Datenrahmen mit 3 leeren Zellen haben, können wir mit der Funktion isnull()
spielen, die darauf ausgelegt ist, fehlende Werte für Array-ähnliche Objekte zu finden – NaN
, None
oder NaT
- und gibt einen booleschen
Wert zurück, der angibt, ob ein fehlender Wert vorhanden ist oder nicht. Sie können die Funktion isnull()
auf den gesamten Datenrahmen, eine bestimmte Spalte oder eine bestimmte Zelle anwenden.
Um den Datenrahmen oder eine bestimmte Spalte zu überprüfen, übergeben wir den Datenrahmen als Argument.
print(pd.isnull(df))
print(pd.isnull(df["C"]))
Ausgang:
A B C D
0 False False False True
1 False False True True
2 False False False False
0 False
1 True
2 False
Name: C, dtype: bool
Der Datenrahmen wird mit booleschen Werten angezeigt, die angeben, ob ein leerer Wert vorhanden ist oder nicht, wobei False
einen nicht leeren Wert und True
einen leeren Wert bedeutet.
Da wir uns jedoch mehr damit befassen, zu prüfen, ob eine Zelle leer ist, können wir die Methoden loc
und iloc
in Verbindung mit der Methode isnull()
verwenden.
Wenn wir die Zelle überprüfen möchten (Index 1
in Spalte C
, die NaN
enthält), ist der folgende Code geeignet, um die Überprüfung auszuwählen und durchzuführen.
Code:
print(pd.isnull(df.loc[1, "C"]))
print(pd.isnull(df["C"].iloc[1]))
Ausgang:
True
True
Verwenden Sie die Funktion any
(), um zu prüfen, ob die Zelle leer ist
Eine weitere Funktion, mit der wir prüfen können, ob eine Zelle im Datenrahmen leer ist, ist die Funktion any
(). Solange eine Zelle leer ist, gibt die Funktion True
zurück, andernfalls False
.
Wir müssen die Funktion isnull()
und die Eigenschaft values
verwenden, damit es funktioniert.
Unter Verwendung desselben Datenrahmens aus dem vorherigen Abschnitt verwendet der folgende Code die Funktion isnull
() für den Datenrahmen und enthält jetzt nur boolesche Werte, um Leerheit anzuzeigen, und die booleschen Werte sind über die Eigenschaft values
zugänglich, die verkettet werden kann die Funktion any()
.
Code:
print(df.isnull().values.any())
Ausgang:
True
Verwenden Sie die isnan
-Funktion, um zu prüfen, ob die Zelle leer ist
Wir können den Index, dessen Zelle in einer Spalte leer ist, in einer Liste speichern, indem wir die Funktionen index
und apply()
sowie den Test numpy.isnan
verwenden.
Wir wählen die Spalte aus und verwenden dann die Funktion index
, um dies zu erreichen. Innerhalb der Methode index
wählen wir dieselbe Spalte erneut aus, um die Funktion apply()
mit dem Test numpy.isnan
zu verwenden.
Diese werden an die Funktion list()
übergeben.
Code:
list(df["D"].index[df["D"].apply(np.isnan)])
Ausgang:
[0, 1]
Damit haben wir den Index (0
und 1
) der leeren Zellen in Spalte D
.
Olorunfemi is a lover of technology and computers. In addition, I write technology and coding content for developers and hobbyists. When not working, I learn to design, among other things.
LinkedIn