Pandas : Comment trouver la date la plus ancienne dans une colonne



Vous pouvez utiliser les méthodes suivantes pour rechercher la date la plus ancienne dans une colonne d’un DataFrame pandas :

Méthode 1 : Rechercher la date la plus ancienne dans la colonne

df['date_column'].min()

Méthode 2 : rechercher la ligne avec la date la plus ancienne dans la colonne

df.iloc[df['date_column'].argmin()]

Les exemples suivants montrent comment utiliser cette syntaxe en pratique avec le DataFrame pandas suivant :

import pandas as pd

#create DataFrame
df = pd.DataFrame({'date': pd.to_datetime(['2022-04-01', '2022-02-12',
                                           '2022-06-13', '2022-02-04',
                                           '2022-07-01', '2022-02-19',
                                           '2022-12-03', '2022-04-04']),
                   'sales': [12, 15, 24, 24, 14, 19, 12, 38]})

#view DataFrame
print(df)

        date  sales
0 2022-04-01     12
1 2022-02-12     15
2 2022-06-13     24
3 2022-02-04     24
4 2022-07-01     14
5 2022-02-19     19
6 2022-12-03     12
7 2022-04-04     38

Exemple 1 : Rechercher la date la plus ancienne dans la colonne

Nous pouvons utiliser le code suivant pour trouver la date la plus ancienne dans la colonne date du DataFrame :

#find earliest date in 'date' column
df['date'].min()

Timestamp('2022-02-04 00:00:00')

À partir du résultat, nous pouvons voir que la date la plus ancienne dans la colonne de date est le 4/02/2022.

Remarque : Si vous souhaitez trouver la date la plus récente, remplacez simplement min() par max() dans le code.

Exemple 2 : Rechercher la ligne avec la date la plus ancienne dans la colonne

Nous pouvons utiliser le code suivant pour trouver la ligne avec la date la plus ancienne dans la colonne date du DataFrame :

#find row with earliest date in 'date' column
df.iloc[df['date'].argmin()]

date     2022-02-04 00:00:00
sales                     24
Name: 3, dtype: object

La sortie affiche la ligne entière contenant la date la plus ancienne dans la colonne de date .

Par exemple, nous pouvons voir les valeurs suivantes dans cette ligne :

  • date : 02-04-2022
  • ventes : 24

Si vous souhaitez uniquement connaître la position d’index de la ligne avec la date la plus ancienne, vous pouvez remplacer .iloc par .index comme suit :

#find index position of row with earliest date in 'date' column
df.index[df['date'].argmin()]

3

Cela nous indique que la ligne avec la position d’index 3 contient la date la plus ancienne dans la colonne date .

Remarque : Si vous souhaitez trouver la ligne avec la date la plus récente, remplacez simplement argmin() par argmax() dans le code.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans les pandas :

Comment ajouter et soustraire des jours à une date dans Pandas
Comment sélectionner des lignes entre deux dates dans Pandas
Comment créer une colonne de date à partir de l’année, du mois et du jour dans Pandas

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *