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