3 min read

Wie überprüfe ich den NaN-Wert in Python?

In Python ist der NaN-Wert ein spezieller Wert, der anzeigt, dass eine Zahl keine Zahl ist. Um in Python nach einem NaN-Wert zu suchen, können Sie ...

In Python ist der NaN-Wert ein spezieller Wert, der anzeigt, dass eine Zahl keine Zahl ist. Um in Python nach einem NaN-Wert zu suchen, können Sie die Funktion isinstance() verwenden. Die Funktion isinstance() gibt einen booleschen Wert zurück, der angibt, ob ein bestimmtes Objekt eine Instanz einer bestimmten Klasse ist. Wenn die Funktion isinstance() True zurückgibt, dann ist das Objekt eine Instanz der durch das Argument angegebenen Klasse, und wenn die Funktion isinstance() False zurückgibt, dann ist das Objekt keine Instanz der durch das Argument angegebenen Klasse

Um die Funktion isinstance() zu verwenden, um in Python nach einem NaN-Wert zu suchen, können Sie das folgende Codebeispiel verwenden

if isinstance(x, Float)

print("x ist ein Float")

anders

print("x ist keine Zahl")

Wie überprüfen Sie in Python, ob ein einzelner Wert NaN ist?. Es gibt Ansätze, die Bibliotheken verwenden (pandas, math und numpy), und Ansätze, die keine Bibliotheken verwenden

NaN ist eine Abkürzung für Not A Number und ist eine der gebräuchlichsten Möglichkeiten, einen fehlenden Wert in Daten darzustellen. Es handelt sich um einen eindeutigen Gleitkommawert, der nicht in einen anderen Typ als Float konvertiert werden kann

Eines der schwerwiegendsten Probleme bei der Datenanalyse ist der NaN-Wert. Der Umgang mit NaN ist entscheidend, um die gewünschten Ergebnisse zu erzielen

Es ist einfach, NaN innerhalb eines Arrays, einer Reihe oder eines Datenrahmens zu lokalisieren und damit umzugehen. Die Bestimmung eines eigenständigen NaN-Werts ist jedoch schwierig. In diesem Artikel gehe ich auf fünf Möglichkeiten ein, mit NaN in Python umzugehen. Die ersten drei Methoden beruhen auf integrierten Bibliotheksfunktionen.

Methode 1. Verwenden der Pandas-Bibliothek

Die Funktion isna() der Pandas-Bibliothek kann verwendet werden, um festzustellen, ob ein Wert null oder NaN ist. Wenn der Wert NaN/null ist, wird True zurückgegeben

import pandas as pd
x = float("nan")
print(f"It's pd.isna : {pd.isna(x)}")
OutputIt's pd.isna : True

Methode 2. Verwendung der Numpy-Bibliothek

Die Funktion isnan() der numpy-Bibliothek kann verwendet werden, um festzustellen, ob ein Wert null oder NaN ist. Sie ähnelt der isna()-Funktion von Pandas

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True

Methode 3. Mathematikbibliothek verwenden

Die mathematische Bibliothek enthält integrierte mathematische Funktionen. Alle reellen Zahlen werden von der Bibliothek abgedeckt. kann verwendet werden, wenn es um große Zahlen geht
Um nach Null-/NaN-Werten zu suchen, enthält die Mathematikbibliothek die Funktion isnan()

import math
x = float("nan")
print(f"It's math.isnan : {math.isnan(x)}")
OutputIt's math.isnan : True

Methode 4. Mit sich selbst vergleichen

Als ich anfing, für ein großes IT-Unternehmen zu arbeiten, musste ich den ersten Monat eine Schulung durchlaufen. Bei der Einführung des Konzepts der NaN-Werte erwähnte der Trainer, dass sie unbekannten Außerirdischen ähneln. Da diese Außerirdischen ständig ihr Aussehen ändern, können wir den NaN-Wert nicht mit sich selbst vergleichen
Die gebräuchlichste Methode zum Erkennen von NaN-Werten besteht darin, zu prüfen, ob die Variable gleich sich selbst ist. Wenn dies nicht der Fall ist, muss es sich um einen NaN-Wert handeln

def isNaN(num):
return num!= num
x=float("nan")
isNaN(x)
OutputTrue

Methode 5. Überprüfung der Reichweite

Der Bereich ist eine weitere Eigenschaft von NaN, die verwendet werden kann, um nach NaN zu suchen. Alle Fließkommawerte liegen zwischen minus unendlich und unendlich

unendlich < irgendeine Zahl < unendlich

NaN-Werte fallen jedoch außerhalb dieses Bereichs. Wenn der Wert also nicht in den Bereich von minus unendlich bis unendlich fällt, ist er NaN

Dies kann wie folgt erfolgen

def isNaN(num):
if float('-inf') < float(num) < float('inf'):
return False
else:
return True
x=float("nan")
isNaN(x)
OutputTrue

Ich hoffe, Sie fanden den vorherigen Artikel hilfreich. Ich bin sicher, dass es viele andere Techniken gibt, um auf der Grundlage verschiedener Logiken nach NaN-Werten zu suchen. Bitte teilen Sie alle anderen Methoden, die Sie entdeckt haben, um nach NaN/Null-Werten zu suchen

Hallo, heute werden wir über NaN sprechen. Außerdem werden wir lernen, wie man Python verwendet, um festzustellen, ob ein gegebener String ein NaN ist. Sie fragen sich vielleicht, was dieses NaN ist. Lassen Sie mich Ihnen sagen, dass Nan eine Abkürzung für Not a Number ist. Es ist ein numerischer Datentyp, der eine Unvorhersehbarkeit des Werts darstellt. Beispielsweise ist die Quadratwurzel einer negativen Zahl ein NaN, ebenso wie die Subtraktion einer unendlichen Zahl von einer anderen unendlichen Zahl. In einem Computersystem repräsentiert NaN einen undefinierten Wert

Wie überprüfen Sie in Python, ob eine Zeichenfolge NaN ist?

Wir können bestimmen, ob ein String NaN ist, indem wir die Eigenschaft des NaN-Objekts verwenden, dass ein NaN ist. = NaN

Lassen Sie uns eine boolesche Funktion namens isNaN() erstellen, die true zurückgibt, wenn das angegebene Argument ein NaN ist, und andernfalls false

def isNaN(string):
    return string != string
print(isNaN("hello"))
print(isNaN(np.nan))

Der folgende Code erzeugt das folgende Ergebnis

False
True

Wir können einen Wert auch in einen Float umwandeln, um festzustellen, ob es sich um NaN handelt. Wir importieren das Mathematikmodul und verwenden die Mathematik für diese. isnan()-Methode. Siehe den folgenden Code

Folglich lautet der Code zum Bestimmen, ob ein NaN-Wert in der Spalte „set_of_numbers“ vorhanden ist, wie folgt

import pandas as pd
import numpy as np

data = {'set_of_numbers': [1,2,3,4,5,np.nan,6,7,np.nan,8,9,10,np.nan]}
df = pd.DataFrame(data)

check_for_nan = df['set_of_numbers'].isnull().values.any()
print (check_for_nan)

Wenn Sie den Code ausführen, erhalten Sie „True“, was das Vorhandensein von NaN-Werten in der DataFrame-Spalte bestätigt

True

Wenn Sie außerdem die tatsächliche Aufschlüsselung der Instanzen sehen möchten, in denen NaN-Werte vorhanden sind, können Sie sie entfernen. Werte. any() aus dem Code. Die vollständige Syntax zum Abrufen der Aufschlüsselung lautet also wie folgt

import pandas as pd
import numpy as np

data = {'set_of_numbers': [1,2,3,4,5,np.nan,6,7,np.nan,8,9,10,np.nan]}
df = pd.DataFrame(data)

check_for_nan = df['set_of_numbers'].isnull()
print (check_for_nan)

Sie sollten jetzt drei Instanzen von NaN-Werten sehen

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
00

Hier ist eine weitere Methode zum Abrufen aller Instanzen, in denen ein NaN-Wert vorhanden ist

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
01

Es erscheint nun eine neue Spalte (mit dem Namen „value_is_NaN“), die alle Instanzen anzeigt, in denen ein NaN-Wert vorhanden ist

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
02

(2) Zählen Sie die Anzahl der NaNs in einer einzelnen DataFrame-Spalte

Sie können diese Syntax verwenden, um die NaN-Werte in einer einzelnen DataFrame-Spalte zu zählen

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
03

Die Syntax für unser Beispiel lautet wie folgt

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
04

Die Zählung von drei NaN-Werten wird Ihnen dann zurückgegeben

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
05

Und hier ist eine andere Methode, um die Zahl zu bestimmen

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
06

Sie erhalten wie zuvor die Anzahl von drei Instanzen von NaN-Werten

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
07

(3) Suche nach NaN in einem gesamten DataFrame

Lassen Sie uns nun eine zweite Spalte zum ursprünglichen DataFrame hinzufügen. Ein weiterer Zahlensatz mit NaN-Werten würde in diese Spalte aufgenommen werden

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
08

Wenn Sie den Code ausführen, sehen Sie im gesamten DataFrame 8 Instanzen von NaN-Werten

import numpy as np
x = float("nan")
print(f"It's np.isnan : {np.isnan(x)}")
OutputIt's np.isnan : True
09

Sie können diese Syntax dann verwenden, um das Vorhandensein von NaN-Werten im gesamten DataFrame zu überprüfen

import math
x = float("nan")
print(f"It's math.isnan : {math.isnan(x)}")
OutputIt's math.isnan : True
00

Für unser Beispiel

import math
x = float("nan")
print(f"It's math.isnan : {math.isnan(x)}")
OutputIt's math.isnan : True
01

Wenn Sie den Code ausführen, erhalten Sie den Wert „True“, der das Vorhandensein von NaN-Werten im DataFrame bestätigt

Wie berechne ich den Wert eines NaN?

NaN ist eine Zahl, die in JavaScript keine gültige Zahl ist. Die Nummer. Wenn der Wert NaN ist, gibt die Methode isNaN() true zurück. und der Datentyp ist eine Zahl.

Wie kann ich den NaN-Wert in Pandas überprüfen?

Im Folgenden finden Sie die Methoden zur Überprüfung auf NaN in Pandas DataFrame. .
Mit isnull() auf NaN prüfen. Werte. any()-Methode
Zählen Sie die NaN mit isnull (). sum()-Methode
Auf NaN prüfen mit isnull(). Werte. any()-Methode
Zählen Sie die NaN mit isnull (). Summe(). sum()-Methode

Wie bestimmen Sie, ob eine Variable einen NaN-Wert hat?

1. isNaN()-Methode . Die Funktion isNaN() kann verwendet werden, um festzustellen, ob eine Zahl NaN ist. Es ist eine boolesche Funktion, die wahr zurückgibt, wenn eine Zahl NaN ist, und andernfalls falsch.

Wie bestimme ich, ob eine Zeichenfolge einen NaN-Wert hat?

Wir können bestimmen, ob eine Zeichenfolge NaN ist, indem wir die Eigenschaft des NaN-Objekts verwenden, dass eine NaN ist. = NaN . Lassen Sie uns eine boolesche Funktion namens isNaN() erstellen, die true zurückgibt, wenn das angegebene Argument ein NaN ist, und andernfalls false. Wir können einen Wert auch in einen Float umwandeln, um festzustellen, ob es sich um NaN handelt.

John Conner
John Conner
John Conner has written about blogger for more than 5 years and for congnghe123 since 2017

Member discussion

       

Related Posts