Heim >Backend-Entwicklung >Python-Tutorial >Wie fülle ich fehlende Daten in einem Pandas-DataFrame mit Nullzählungen aus?
Bei der Arbeit mit Zeitreihendaten kann es vorkommen, dass bestimmte Daten keine entsprechenden Ereignisse haben. Das Plotten solcher Daten kann zu Inkonsistenzen führen, wenn die Datumsbereiche zwischen den verschiedenen Serien nicht übereinstimmen.
Ein Ansatz zur Behebung dieses Problems besteht darin, fehlende Daten mit einer Nullzählung zum Datenrahmen hinzuzufügen. Dies gewährleistet ein vollständiges Diagramm, das die gesamte Zeitspanne darstellt, auch für Daten ohne Ereignisse.
Um dies zu erreichen, können Sie die Methode Series.reindex verwenden. Mit dieser Methode können Sie den Index einer Reihe anpassen, um ihn an einen anderen Index anzupassen. In Ihrem Fall würden Sie Ihre Serie basierend auf dem gewünschten Datumsbereich neu indizieren und sicherstellen, dass alle Daten innerhalb dieses Bereichs enthalten sind. Alle fehlenden Daten werden mit Nullzählungen aufgefüllt.
Hier ist ein Beispiel, das diesen Ansatz demonstriert:
import pandas as pd idx = pd.date_range('09-01-2013', '09-30-2013') s = pd.Series({'09-02-2013': 2, '09-03-2013': 10, '09-06-2013': 5, '09-07-2013': 1}) s.index = pd.DatetimeIndex(s.index) s = s.reindex(idx, fill_value=0) print(s)
Dieser Code erzeugt die folgende Ausgabe:
2013-09-01 0 2013-09-02 2 2013-09-03 10 2013-09-04 0 2013-09-05 0 2013-09-06 5 2013-09-07 1 ...
Wie Sie Wie Sie sehen können, wurden die fehlenden Daten (04.09. und 09.05.) der Reihe mit Nullzählungen hinzugefügt, was zu einem vollständigen Diagramm von 30 führt Tage. Durch die Verwendung der Neuindizierungsmethode können Sie Datumsbereichsdiskrepanzen effektiv bewältigen und umfassende Visualisierungen für Ihre Zeitreihendaten erstellen.
Das obige ist der detaillierte Inhalt vonWie fülle ich fehlende Daten in einem Pandas-DataFrame mit Nullzählungen aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!