Метод between_time для DataFrame в Pandas

PandasPandasBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии мы научимся использовать метод between_time() в DataFrame библиотеки Pandas. Этот метод позволяет выбирать значения между определёнными временами дня. Он может быть использован для фильтрации и извлечения конкретных данных, основанных на времени, из DataFrame.

Советы по работе с ВМ

После запуска виртуальной машины кликните в левом верхнем углу, чтобы переключиться на вкладку Notebook и приступить к практике в Jupyter Notebook.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook полностью загрузится. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.

Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Импортируем необходимые библиотеки

Прежде чем мы сможем использовать метод between_time(), нам нужно импортировать необходимые библиотеки. В этом практическом занятии мы будем использовать библиотеку Pandas.

import pandas as pd

Создаем DataFrame

Далее, создадим DataFrame, содержащий данные, основанные на времени. Мы можем использовать функцию date_range() из Pandas для генерации последовательности дат, а затем установить ее в качестве индекса DataFrame.

values = pd.date_range('2021-01-01', periods=4, freq='20T')
df = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [1, 2, 3, 4]}, index=values)

Выбираем значения между определенным временем

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

df_selected = df.between_time('00:00', '01:00')

Настраиваем параметры include_start и include_end

Метод between_time() также позволяет нам настраивать параметры include_start и include_end. По умолчанию эти параметры установлены в True, что означает, что начальное и конечное время включаются в результат.

df_selected = df.between_time('00:00', '01:00', include_start=False, include_end=False)

Обработка ошибки non-DatetimeIndex

Если индекс DataFrame не является DatetimeIndex, метод between_time() вызовет ошибку TypeError. Чтобы избежать этой ошибки, убедитесь, что индекс вашего DataFrame является DatetimeIndex.

df = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [1, 2, 3, 4]}, index=[1, 2, 3, 4])
## This will raise a TypeError
df_selected = df.between_time('00:00', '01:00')

Резюме

В этом практическом занятии мы узнали, как использовать метод between_time() в DataFrame библиотеки Pandas. Этот метод позволяет нам выбирать значения между определенными временами дня. Мы можем настроить начальное и конечное время, а также включение или исключение начального и конечного времени, чтобы отфильтровать и извлечь определенные данные, основанные на времени, из DataFrame. Важно убедиться, что индекс DataFrame является DatetimeIndex, чтобы избежать ошибок TypeError. Этот метод может быть полезен в различных приложениях, таких как анализ временных рядов и извлечение определенных временных периодов из набора данных.