Heim >Backend-Entwicklung >Python-Tutorial >Wie fülle ich fehlende Daten in einem Pandas-DataFrame aus?

Wie fülle ich fehlende Daten in einem Pandas-DataFrame aus?

Susan Sarandon
Susan SarandonOriginal
2024-12-18 22:27:10525Durchsuche

How to Fill Missing Dates in a Pandas DataFrame?

Fehlende Daten zum Pandas-Datenrahmen hinzufügen

Beim Umgang mit Zeitreihendaten kommt es häufig zu fehlenden Daten. Dies kann auftreten, wenn Ereignisse an bestimmten Terminen stattfinden, an anderen jedoch nicht. Um diese Daten genau darzustellen, müssen die fehlenden Daten berücksichtigt werden.

Im bereitgestellten Code wird ein Pandas-Datenrahmen mit dem Datum als Index erstellt. Während der Datumsbereich alle Tage innerhalb eines bestimmten Zeitrahmens umfasst, ist die Größe des Datenrahmens kleiner, da mit einigen Daten keine Ereignisse verknüpft sind. Dies führt zu nicht übereinstimmenden Größen, wenn versucht wird, den Datumsbereich und den Datenrahmen darzustellen.

Der bevorzugte Ansatz besteht darin, fehlende Daten mit einer Anzahl von 0 zur Serie hinzuzufügen. Dadurch wird ein vollständiges Diagramm mit allen berücksichtigten Daten sichergestellt. Dazu kann die Reindex-Methode verwendet werden:

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)

Dadurch wird eine neue Serie s ausgegeben, in der alle fehlenden Daten zwischen „01.09.2013“ und „30.09.2013“ mit 0 gefüllt sind Werte:

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
2013-09-08     0
...

Durch die Neuindizierung werden die fehlenden Daten zur Reihe hinzugefügt, was eine genaue Darstellung und Analyse der Zeitreihe ermöglicht Daten.

Das obige ist der detaillierte Inhalt vonWie fülle ich fehlende Daten in einem Pandas-DataFrame aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn