Heim > Artikel > Backend-Entwicklung > Wie filtere ich einen Pandas-DataFrame basierend auf einem Datumsbereich?
Das Filtern eines Pandas DataFrame basierend auf Datumsangaben ist eine häufige Aufgabe in der Datenanalyse. In diesem Artikel untersuchen wir zwei Ansätze zum Filtern eines DataFrame, um nur Zeilen mit Datumsangaben innerhalb eines bestimmten Bereichs, insbesondere der nächsten zwei Monate ab dem aktuellen Datum, beizubehalten.
Filtern nach Beschriftung oder Positionsindizierung
Wenn die Spalte „Datum“ als Index des DataFrame konfiguriert ist, können Sie das .loc-Attribut für die labelbasierte Indizierung oder .iloc für die Positionsindizierung verwenden. Wenn Ihr geplanter Datumsbereich beispielsweise vom 1. Januar 2014 bis zum 1. Februar 2014 reicht, können Sie den folgenden Code verwenden:
df.loc['2014-01-01':'2014-02-01']
Filtern nach logischen Bedingungen
In Fällen, in denen die Spalte „Datum“ nicht der Index ist, haben Sie zwei Möglichkeiten. Erstens können Sie es vorübergehend oder dauerhaft als Index festlegen. Zweitens können Sie logische Bedingungen mithilfe boolescher Operatoren anwenden. Dies kann mit dem folgenden Code erreicht werden:
df[(df['date'] > '2013-01-01') & (df['date'] < '2013-02-01')]
In diesem Beispiel wird die Spalte „Datum“ mit zwei Datumsangaben verglichen: „01.01.2013“ und „01.02.2013“. Der resultierende DataFrame enthält nur die Zeilen, in denen das Datum in den angegebenen Bereich fällt.
Hinweis: Es ist wichtig, geeignete Datumsformate zu verwenden und sicherzustellen, dass die Werte in der Spalte „Datum“ übereinstimmen in einem gültigen Datumsformat. Darüber hinaus ist .ix veraltet und sollte nicht mehr verwendet werden.
Das obige ist der detaillierte Inhalt vonWie filtere ich einen Pandas-DataFrame basierend auf einem Datumsbereich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!