Problème :
Un DataFrame Pandas est créé à partir d'un fichier CSV contenant un colonne de date. La tâche consiste à extraire uniquement les lignes dont les valeurs de date se situent dans une plage de dates spécifiée ou entre deux dates spécifiées.
Solution :
Il existe deux approches pour y parvenir :
Option 1 : Masquage booléen
Exemple :
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
Exemple :
df = pd.read_csv('data.csv', parse_dates=['date']) df = df.set_index(['date']) df_filtered = df.loc[start_date : end_date]
Remarque : Si parse_dates a été utilisé lors de la lecture du CSV, la conversion de la colonne de date en datetime64 n'est pas nécessaire.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!