Maison > développement back-end > Tutoriel Python > Comment filtrer les lignes Pandas DataFrame par plage de dates ?

Comment filtrer les lignes Pandas DataFrame par plage de dates ?

Susan Sarandon
Libérer: 2024-12-29 10:03:09
original
352 Les gens l'ont consulté

How to Filter Pandas DataFrame Rows by Date Range?

Récupération des lignes DataFrame dans les plages de dates spécifiées

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

  1. Assurer la date La colonne est au format datetime64[ns].
  2. Créez un masque booléen en utilisant des conditions de plage de dates.
  3. Sélectionnez les lignes souhaitées à l'aide de df.loc[mask].

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]
Copier après la connexion

Option 2 : DatetimeIndex

  1. Définissez la colonne de date comme index du DataFrame.
  2. Utilisez df.loc[start_date : end_date] pour récupérer le lignes.

Exemple :

df = pd.read_csv('data.csv', parse_dates=['date'])
df = df.set_index(['date'])

df_filtered = df.loc[start_date : end_date]
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal