Метод floor
Метод floor применяется к DatetimeIndex
и возвращает новый индекс с округлением дат вниз
до заданной временной частоты. Первым параметром
передаётся строка с периодом, например, 'D' для дней.
Округление происходит в сторону уменьшения, то есть
к началу периода. Метод полезен для группировки данных
по временным интервалам.
Синтаксис
datetime_index.floor(freq)
Пример
Давайте создадим индекс с датами и округлим их вниз до дня:
import pandas as pd
idx = pd.DatetimeIndex([
'2026-09-09 14:30:25',
'2026-09-10 08:15:10',
'2026-09-11 23:59:59'
])
res = idx.floor('D')
print(res)
Результат выполнения кода:
DatetimeIndex(['2026-09-09', '2026-09-10', '2026-09-11'], dtype='datetime64[ns]', freq=None)
Пример
Теперь округлим даты вниз до начала часа:
import pandas as pd
idx = pd.DatetimeIndex([
'2026-09-09 14:30:25',
'2026-09-10 08:15:10',
'2026-09-11 23:59:59'
])
res = idx.floor('H')
print(res)
Результат выполнения кода:
DatetimeIndex(['2026-09-09 14:00:00', '2026-09-10 08:00:00', '2026-09-11 23:00:00'], dtype='datetime64[ns]', freq=None)
Пример
Округление вниз до начала месяца:
import pandas as pd
idx = pd.DatetimeIndex([
'2026-09-09 14:30:25',
'2026-10-10 08:15:10',
'2026-11-11 23:59:59'
])
res = idx.floor('M')
print(res)
Результат выполнения кода:
DatetimeIndex(['2026-09-01', '2026-10-01', '2026-11-01'], dtype='datetime64[ns]', freq=None)
Смотрите также
-
класс
DatetimeIndex,
который представляет временной индекс -
метод
ceil,
который округляет даты вверх -
метод
round,
который округляет даты до ближайшего значения -
метод
normalize,
который убирает время, оставляя только дату