Direkt zum Inhalt

Python NaN: 4 Wege, um in Python auf fehlende Werte zu prüfen

Entdecke 4 Möglichkeiten, NaN-Werte in Python zu erkennen, indem du NumPy und Pandas benutzt. Lerne die wichtigsten Unterschiede zwischen NaN und None, um Daten effizient zu bereinigen und zu analysieren.
Aktualisierte 16. Jan. 2025  · 5 Min. Lesezeit

In der Welt der Datenwissenschaft und -analyse ist es eher die Regel als die Ausnahme, dass Daten fehlen. Fehlende Werte können die Analyse verfälschen, zu falschen Schlussfolgerungen führen und generell den Fluss der Datenverarbeitung stören. Die Behebung dieser Lücken ist entscheidend für die Integrität deiner Analyse. In diesem Artikel lernst du verschiedene Möglichkeiten kennen, um NaN-Werte (Not a Number) in Python zu erkennen.

Die kurze Antwort: Verwenden Sie entweder NumPy's isnan() Funktion oder Pandas .isna() Methode

Beim Umgang mit fehlenden Werten in Python hängt die Vorgehensweise weitgehend von der Datenstruktur ab, mit der du arbeitest.

Für einzelne Werte oder Arrays: NumPy verwenden

Die Funktion isnan() von NumPy ist ideal, um NaNs in numerischen Arrays oder Einzelwerten zu erkennen und bietet eine unkomplizierte und effiziente Lösung. Hier ist es in Aktion!

import numpy as np

# Single value check
my_missing_value = np.nan
print(np.isnan(my_missing_value))  # Output: True

# Array check
my_missing_array = np.array([1, np.nan, 3])
nan_array = np.isnan(my_missing_array)
print(nan_array)  # Output: [False  True False]

Für DataFrames: Pandas verwenden

Pandas bietet umfassende Methoden wie .isna() und .isnull(), um fehlende Werte in DataFrame- oder Serienobjekten zu erkennen und sich nahtlos in Datenanalyse-Workflows zu integrieren.

import pandas as pd
import numpy as np

my_dataframe = pd.DataFrame({
    'Column1': ["I", "Love", np.nan], 
    'Column2': ["Python", np.nan, "The Best"]
})


print(my_dataframe.isna())

Wenn du diesen Code ausführst, zeigt die Ausgabe das Vorhandensein von NaN-Werten in einem interessanteren Kontext an, wie unten gezeigt:

   Column1  Column2
0    False    False
1    False     True
2     True    False

Der Unterschied zwischen NaN und None

In Python ist es wichtig, den Unterschied zwischen NaN und None zu verstehen. NaN ist eine Fließkommadarstellung von "Not a Number", die vor allem bei numerischen Berechnungen verwendet wird. None Python hingegen ist ein Objekt, das das Fehlen eines Wertes darstellt, ähnlich wie null in anderen Sprachen. Während NaN für mathematische oder wissenschaftliche Berechnungen verwendet wird, ist None ein allgemeiner Begriff, der auf das Fehlen von Daten hinweist.

4 Möglichkeiten, in Python auf NaN zu prüfen

Das Navigieren durch Datensätze, um fehlende Werte zu identifizieren, ist ein wichtiger Schritt bei der Datenvorverarbeitung. Wir wollen vier praktische Methoden kennenlernen, um in Python nach NaN zu suchen, und dabei an die spannenden Beispiele anknüpfen, die wir bereits verwendet haben.

1. Prüfen auf NaN mit np.isnan()

Wie wir bereits gesehen haben, bietet NumPy einen einfachen Ansatz, um NaN Werte sowohl in Einzelwerten als auch in Arrays zu identifizieren, was für die numerische Datenanalyse unerlässlich ist.

import numpy as np

# Checking a single value
print(np.isnan(np.nan))  # Output: True

# Checking an array
my_array = np.array([1, 5, np.nan])
print(np.isnan(my_array))  # Output: [False False  True]

2. Prüfen auf NaN mit pd.isna()

Pandas vereinfacht die Erkennung von NaN-Werten in Datenstrukturen, von Skalaren bis hin zu komplexen DataFrames, und ist damit von unschätzbarem Wert für Datenmanipulationsaufgaben.

import pandas as pd

# Checking a single value
print(pd.isna(np.nan))  # Output: True

# Checking a pandas Series
my_series = pd.Series(["Python", np.nan, "The Best"])
print(my_series.isna())  # Output: [False  True  False]

# Checking a pandas DataFrame
my_dataframe = pd.DataFrame({
    'Column1': ["I", "Love", np.nan], 
    'Column2': ["Python", np.nan, "The Best"]
})


print(pd.isna(my_dataframe)) # Output a DataFrame with True for missing values

3. Prüfen auf NaN in DataFrames mit Pandas .isna() oder .isnull() Methoden

Pandas DataFrames bieten außerdem die Methoden .isna() und .isnull(), um fehlende Werte in Datensätzen mühelos zu ermitteln und einen klaren Überblick über die Vollständigkeit der Daten zu erhalten.

import pandas as pd

# Create a dataframe with missing values
my_dataframe = pd.DataFrame({
    'Column1': ["I", "Love", np.nan], 
    'Column2': ["Python", np.nan, "The Best"]
})

print(my_dataframe.isna())
# Output:
#    Column1  Column2
# 0    False    False
# 1    False     True
# 2     True    False

print(my_dataframe.isnull())
# Output:
#    Column1  Column2
# 0    False    False
# 1    False     True
# 2     True    False

4. Prüfen auf NaN in DataFrames mit math.isnan()

Für die Überprüfung einzelner Zahlen bietet die Funktion math.isnan() eine einfache, aber effektive Lösung, vor allem wenn es um reine Python-Datentypen geht.

import math

# Assuming my_number is a float or can be converted to one
my_number = float('nan')
print(math.isnan(my_number))  # Output: True

Abschließende Überlegungen und zusätzliche Ressourcen

Die Identifizierung und Verwaltung von NaN-Werten ist ein grundlegender Schritt bei der Bereinigung und Vorbereitung deiner Daten für die Analyse. Ganz gleich, ob du mit Arrays, Reihen oder Datenrahmen arbeitest, es ist wichtig, die Werkzeuge und Methoden zu verstehen, die in Python für den Umgang mit fehlenden Daten zur Verfügung stehen. Wenn du mehr wissen willst, schau dir die folgenden Ressourcen an:


Adel Nehme's photo
Author
Adel Nehme
LinkedIn

Adel ist Data Science Educator, Speaker und Evangelist bei DataCamp, wo er verschiedene Kurse und Live-Trainings zu Datenanalyse, maschinellem Lernen und Data Engineering veröffentlicht hat. Er setzt sich leidenschaftlich für die Verbreitung von Datenkenntnissen und Datenkompetenz in Organisationen und an der Schnittstelle zwischen Technologie und Gesellschaft ein. Er hat einen MSc in Data Science und Business Analytics. In seiner Freizeit ist er mit seinem Kater Louis unterwegs.

Themen

Beginne deine Python-Reise noch heute!

Lernpfad

Python Data Fundamentals

30hrs hr
Grow your data skills, discover how to manipulate and visualize data, and apply advanced analytics to make data-driven decisions.
Siehe DetailsRight Arrow
Kurs starten
Mehr anzeigenRight Arrow
Verwandt

Der Blog

Die 20 besten Snowflake-Interview-Fragen für alle Niveaus

Bist du gerade auf der Suche nach einem Job, der Snowflake nutzt? Bereite dich mit diesen 20 besten Snowflake-Interview-Fragen vor, damit du den Job bekommst!
Nisha Arya Ahmed's photo

Nisha Arya Ahmed

20 Min.

Der Blog

Lehrer/innen und Schüler/innen erhalten das Premium DataCamp kostenlos für ihre gesamte akademische Laufbahn

Keine Hacks, keine Tricks. Schüler/innen und Lehrer/innen, lest weiter, um zu erfahren, wie ihr die Datenerziehung, die euch zusteht, kostenlos bekommen könnt.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

4 Min.

Der Blog

2022-2023 DataCamp Classrooms Jahresbericht

Zu Beginn des neuen Schuljahres ist DataCamp Classrooms motivierter denn je, das Lernen mit Daten zu demokratisieren. In den letzten 12 Monaten sind über 7.650 neue Klassenzimmer hinzugekommen.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

8 Min.

Der Blog

Q2 2023 DataCamp Donates Digest

DataCamp Donates hat im zweiten Quartal 2023 über 20.000 Stipendien an unsere gemeinnützigen Partner vergeben. Erfahre, wie fleißige benachteiligte Lernende diese Chancen in lebensverändernde berufliche Erfolge verwandelt haben.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

Der Blog

Top 30 Generative KI Interview Fragen und Antworten für 2024

Dieser Blog bietet eine umfassende Sammlung von Fragen und Antworten zu generativen KI-Interviews, die von grundlegenden Konzepten bis hin zu fortgeschrittenen Themen reichen.
Hesam Sheikh Hassani's photo

Hesam Sheikh Hassani

15 Min.

Der Blog

Die 32 besten AWS-Interview-Fragen und Antworten für 2024

Ein kompletter Leitfaden zur Erkundung der grundlegenden, mittleren und fortgeschrittenen AWS-Interview-Fragen, zusammen mit Fragen, die auf realen Situationen basieren. Es deckt alle Bereiche ab und sorgt so für eine abgerundete Vorbereitungsstrategie.
Zoumana Keita 's photo

Zoumana Keita

30 Min.

Mehr anzeigenMehr anzeigen