Maison >développement back-end >Tutoriel Python >Comment Pandas peut-il convertir efficacement les dates de chaîne en objets DateTime et faciliter le filtrage basé sur la date ?

Comment Pandas peut-il convertir efficacement les dates de chaîne en objets DateTime et faciliter le filtrage basé sur la date ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-03 06:53:12784parcourir

How Can Pandas Efficiently Convert String Dates to DateTime Objects and Facilitate Date-Based Filtering?

Conversion de chaînes au format Datetime dans Pandas

Dans l'analyse de données, traiter des chaînes représentant des dates et des heures est un défi courant. Pour extraire des informations significatives, il est crucial de convertir ces chaînes dans un format datetime approprié.

Conversion de chaînes en Datetime

Pandas propose une méthode pratique, to_datetime(), pour conversion de chaînes au format datetime. Il détecte automatiquement le format de la chaîne d'entrée et la convertit en objet datetime64. Par exemple, considérons un dataframe avec une colonne I_DATE contenant des chaînes représentant les dates et les heures :

df['I_DATE'] = ['28-03-2012 2:15:00 PM', '28-03-2012 2:17:28 PM', '28-03-2012 2:50:50 PM']

Pour convertir I_DATE au format datetime, utilisez simplement to_datetime() :

df['I_DATE'] = pd.to_datetime(df['I_DATE'])

La sortie sera une colonne d'objets datetime64 :

0   2012-03-28 14:15:00
1   2012-03-28 14:17:28
2   2012-03-28 14:50:50
Name: I_DATE, dtype: datetime64[ns]

Accès à la date Composants

Une fois les chaînes converties en datetime, vous pouvez accéder à des composants spécifiques de la date et de l'heure à l'aide de l'accesseur dt. Par exemple, pour extraire le composant date :

df['I_DATE'].dt.date

renvoie une colonne d'objets datetime64[ns] représentant uniquement les dates. De même, vous pouvez utiliser dt.time pour récupérer le composant temporel.

Filtrer les lignes en fonction de plages de dates

Pour filtrer les lignes en fonction d'une plage de dates, vous pouvez utilisez les opérations de chaîne > et &Lt ;. Par exemple, pour sélectionner les lignes où la colonne I_DATE se trouve dans une plage spécifique :

df[(df['I_DATE'] > '2015-02-04') & (df['I_DATE'] < '2015-02-10')]

Cela renverra une trame de données contenant uniquement les lignes où la colonne I_DATE se situe entre les dates spécifiées.

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!

Déclaration:
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