Pandas: как найти самую старую дату в столбце


Вы можете использовать следующие методы, чтобы найти самую старую дату в столбце DataFrame pandas:

Способ 1. Найдите самую старую дату в столбце.

 df[' date_column ']. min ()

Способ 2. Найдите в столбце строку с самой старой датой.

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

В следующих примерах показано, как использовать этот синтаксис на практике со следующим DataFrame pandas:

 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

Пример 1. Найдите самую старую дату в столбце.

Мы можем использовать следующий код, чтобы найти самую старую дату в столбце даты DataFrame:

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

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

Из результата мы видим, что самая старая дата в столбце даты — 04.02.2022.

Примечание . Если вы хотите найти самую последнюю дату, просто замените в коде min() на max() .

Пример 2. Найдите строку с самой старой датой в столбце.

Мы можем использовать следующий код, чтобы найти строку с самой старой датой в столбце даты 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

В выводе отображается вся строка, содержащая самую старую дату в столбце даты .

Например, в этой строке мы можем увидеть следующие значения:

  • дата : 04.02.2022
  • грязный : 24

Если вы хотите узнать только позицию индекса строки с самой старой датой, вы можете заменить .iloc на .index следующим образом:

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

3

Это говорит нам о том, что строка с индексной позицией 3 содержит самую старую дату в столбце даты .

Примечание . Если вы хотите найти строку с самой последней датой, просто замените в коде argmin() на argmax() .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:

Как добавить и вычесть дни из даты в Pandas
Как выбрать строки между двумя датами в Pandas
Как создать столбец даты из года, месяца и дня в Pandas

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *