Функция Python Pandas Series.between(): подробное руководство
В машинном обучении приходится иметь дело с большим количеством данных для анализа. Работа с такими гигантскими объемами данных может быть немного сложной, но с правильными функциями это лишь вопрос - когда мы окажемся там, где хотели.
В этой статье мы рассмотрим одну из таких функций, которая поможет пользователю найти, попадает ли набор заданных значений между двумя заданными входными данными. Интересующей нас функцией является функция between()
из библиотеки pandas в Python, и мы подробно рассмотрим ее в следующих разделах:
- Синтаксис функции Pandas
Series.between()
- Использование функции
between()
для рядов - Использование опции
inclusive
в функцииbetween()
Прежде чем двигаться дальше, давайте импортируем библиотеку pandas с помощью приведенного ниже кода:
import pandas as pd
Синтаксис функции Pandas Series.between()
Понять работу функции between()
можно из ее синтаксиса, который приведен ниже. Он содержит все основные составляющие, необходимые для ее эффективного функционирования.
Синтаксис:
Series.between(left, right, inclusive = ‘both’)
Параметры:
left
- список входных данных или скалярная сущность, которая объявлена как один конец границыright
- список входных данных или скалярная сущность, которая объявлена как другой конец границыinclusive
- необязательная конструкция, по умолчанию имеет значение both и используется для включения или исключения граничных значений перед сравнением входных данных с границами
Использование функции between() для ряда
В этом разделе мы построим ряд, к которому применим функцию between()
, чтобы найти, какие из значений в ряду попадают между выбранными границами.
Ниже приведен код для создания серии с помощью библиотеки pandas в Python:
sr1 = pd.Series([12, 36, 71, 99, 34, 28])
После этого указанный ряд передается через функцию between()
, как показано ниже:
R = sr1.between(2,50)
print(R)
Выходные данные:
Как видно из приведенного выше результата, функция between()
возвращает булево значение для каждой сущности в ряду, сравнивая, лежит ли она в указанных границах.
Использование опции inclusive в функции between()
В этом разделе мы воспользуемся опциональной конструкцией в синтаксисе функции between()
, чтобы продемонстрировать различные её вариации.
Опция inclusive
в этой функции может быть развернута тремя различными способами, каждый из которых приведен ниже:
- Оба - Оба граничных значения учитываются при анализе входного ряда
- Ни то, ни другое - оба граничных значения не учитываются при анализе входного ряда
- Левое - При анализе входного ряда учитывается только левое граничное значение, игнорируя правое граничное значение
- Правое - При анализе входного ряда рассматривается только правое граничное значение, игнорируя левое граничное значение
Теперь давайте рассмотрим примеры разных типов, чтобы лучше понять, что представляет собой опция inclusive
.
Пример 1:
sr2 = pd.Series([5, 12, 36, 71, 99, 50, 34, 28])
R = sr2.between(5,50, inclusive = 'both')
print(R)
Выходные данные:
Из приведенного выше результата видно, что оба граничных значения 5 и 50 включены в поиск, тем самым возвращая True
для 0-й и 5-й позиций входного ряда.
Пример 2:
Теперь давайте установим опцию в параметр "ни то, ни другое" и посмотрим, что произойдет.
R = sr2.between(5,50, inclusive = 'neither')
print(R)
В отличие от предыдущих результатов, видно, что результаты возвращаются как False в 0-й и 5-й позициях входного ряда, поскольку ни одно из граничных значений не учитывается в этом случае. То же самое можно ожидать и для крайнего левого граничного значения, которое не учитывается при использовании "левой" опции, и наоборот, в случае использования "правой".
Заключение
Мы подошли к концу этой статьи и надеемся, что она подробно рассказала о различных способах использования функции between()
из библиотеки pandas.
Спасибо за прочтение и удачного кодинга!