Panda: come trovare la data più vecchia in una colonna


È possibile utilizzare i seguenti metodi per trovare la data più vecchia in una colonna di un DataFrame panda:

Metodo 1: trova la data più vecchia nella colonna

 df[' date_column ']. min ()

Metodo 2: trova la riga con la data più vecchia nella colonna

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

I seguenti esempi mostrano come utilizzare questa sintassi in pratica con i seguenti DataFrame panda:

 import pandas as pd

#createDataFrame
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)

        dirty date
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

Esempio 1: trova la data più vecchia nella colonna

Possiamo utilizzare il seguente codice per trovare la data più vecchia nella colonna della data del DataFrame:

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

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

Dal risultato, possiamo vedere che la data più vecchia nella colonna della data è 02/04/2022.

Nota : se desideri trovare la data più recente, sostituisci semplicemente min() con max() nel codice.

Esempio 2: trova la riga con la data più vecchia nella colonna

Possiamo usare il seguente codice per trovare la riga con la data più vecchia nella colonna della data del DataFrame:

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

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

L’output visualizza l’intera riga contenente la data più vecchia nella colonna della data .

Ad esempio, possiamo vedere i seguenti valori in questa riga:

  • data : 02-04-2022
  • sporco : 24

Se vuoi solo conoscere la posizione dell’indice della riga con la data più vecchia, puoi sostituire .iloc con .index come segue:

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

3

Questo ci dice che la riga con posizione indice 3 contiene la data più vecchia nella colonna della data .

Nota : se desideri trovare la riga con la data più recente, sostituisci semplicemente argmin() con argmax() nel codice.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:

Come aggiungere e sottrarre giorni da una data in Pandas
Come selezionare le righe tra due date in Pandas
Come creare una colonna di date da anno, mese e giorno in Pandas

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *