DataFrame.first() / Series.first()

Метод first() возвращает начальную часть временного ряда, попадающую в указанный временной интервал от первой даты в индексе. Требует DatetimeIndex.

Предупреждение

Метод first() помечен как устаревший начиная с pandas 2.1. Рекомендуется использовать .loc[] с явными временными границами.

Сигнатура

DataFrame.first(offset)
Series.first(offset)

Параметры

  • offset — строка или DateOffset, описывает интервал: '3D' (3 дня), '2W' (2 недели), '1M' (1 месяц), '10min' и т. д.

Возвращаемое значение

DataFrame или Series со строками, попадающими в начало временного диапазона.

Примеры

Пример 1. Первые 3 дня измерений

import pandas as pd

idx = pd.date_range("2026-05-01", periods=7, freq="D")
df = pd.DataFrame({"temp": [22, 23, 21, 24, 25, 26, 27]}, index=idx)
print(df.first("3D"))
            temp
2026-05-01    22
2026-05-02    23
2026-05-03    21

Пример 2. Первая неделя

import pandas as pd

idx = pd.date_range("2026-05-01", periods=20, freq="D")
df = pd.DataFrame({"v": range(20)}, index=idx)
print(df.first("1W").tail())
            v
2026-05-03  2
2026-05-04  3
2026-05-05  4
2026-05-06  5
2026-05-07  6

Пример 3. Первые 30 минут логов Arduino

import pandas as pd

idx = pd.date_range("2026-05-15 10:00", periods=120, freq="min")
df = pd.DataFrame({"reading": range(120)}, index=idx)
print(df.first("30min").tail())
                     reading
2026-05-15 10:25:00       25
2026-05-15 10:26:00       26
2026-05-15 10:27:00       27
2026-05-15 10:28:00       28
2026-05-15 10:29:00       29

Пример 4. Современный аналог через .loc

import pandas as pd

idx = pd.date_range("2026-05-01", periods=10, freq="D")
df = pd.DataFrame({"v": range(10)}, index=idx)
start = df.index[0]
print(df.loc[start:start + pd.Timedelta(days=2)])
            v
2026-05-01  0
2026-05-02  1
2026-05-03  2

Пример 5. Series

import pandas as pd

idx = pd.date_range("2026-05-01", periods=5, freq="D")
s = pd.Series([10, 20, 30, 40, 50], index=idx)
print(s.first("2D"))
2026-05-01    10
2026-05-02    20
Freq: D, dtype: int64

См. также

Примечание

Лицензия и источники

Техническое описание функции адаптировано из официальной документации Pandas (https://pandas.pydata.org/docs/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.