Problem:
Ein Pandas DataFrame wird aus einer CSV-Datei erstellt, die eine enthält Datumsspalte. Die Aufgabe besteht darin, nur die Zeilen zu extrahieren, deren Datumswerte in einen angegebenen Datumsbereich oder zwischen zwei angegebenen Datumsangaben fallen.
Lösung:
Es gibt zwei Ansätze, um dies zu erreichen :
Option 1: Boolesche Maskierung
Beispiel:
import pandas as pd df = pd.read_csv('data.csv', parse_dates=['date']) start_date = '2022-01-01' end_date = '2022-02-28' mask = (df['date'] >= start_date) & (df['date'] <= end_date) df_filtered = df.loc[mask]
Option 2: DatetimeIndex
Beispiel:
df = pd.read_csv('data.csv', parse_dates=['date']) df = df.set_index(['date']) df_filtered = df.loc[start_date : end_date]
Hinweis: Wenn parse_dates beim Lesen der CSV verwendet wurde, ist die Konvertierung der Datumsspalte in datetime64 nicht erforderlich.
Das obige ist der detaillierte Inhalt vonWie filtere ich Pandas DataFrame-Zeilen nach Datumsbereich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!