pandas.Interval
- classpandas.Interval
-
Неизменяемый объект, реализующий интервал, ограниченный срез-подобный интервал.
- Параметры
-
- left:упорядочиваемый скаляр
-
Левая граница интервала.
- right:упорядочиваемый скаляр
-
Правая граница интервала.
- closed:{‘right’, ‘left’, ‘both’, ‘neither’}, по умолчанию ‘right’
-
Закрыта ли сторона интервала слева, справа, обе или ни одна. Подробное объяснение см. в Примечаниях.
См. также
IntervalIndex-
Индекс объектов Interval, все из которых закрыты с одной стороны.
cut-
Преобразование непрерывных данных в дискретные интервалы (Категориальные объекты Interval).
qcut-
Преобразование непрерывных данных в интервалы (Категориальные объекты Interval) на основе квантилей.
Period-
Представляет период времени.
Примечания
Параметры left и right должны быть одного типа, их необходимо сравнивать, и они должны удовлетворять
left <= right.Закрытый интервал (в математике обозначается квадратными скобками) содержит свои конечные точки, т.е. закрытый интервал
[0, 5]характеризуется условиями0 <= x <= 5. Это то, чтоclosed='both'обозначает. Открытый интервал (в математике обозначается круглыми скобками) не содержит своих конечных точек, т.е. открытый интервал(0, 5)характеризуется условиями0 < x < 5. Это то, чтоclosed='neither'обозначает. Интервалы также могут быть полуоткрытыми или полузакрытыми, т.е.[0, 5)описывается0 <= x < 5(closed='left') и(0, 5]описывается0 < x <= 5(closed='right').Примеры
Можно создать интервалы разных типов, например, числовые:
>>> iv = pd.Interval(left=0, right=5) >>> iv Interval(0, 5, closed='right')
Можно проверить, принадлежит ли элемент интервалу или содержит ли он другой интервал:
>>> 2.5 in iv True >>> pd.Interval(left=2, right=5, closed='both') in iv True
Можно проверить границы (
closed='right', поэтому0 < x <= 5):>>> 0 in iv False >>> 5 in iv True >>> 0.0001 in iv True
Вычислить его длину
>>> iv.length 5
Можно работать с + и * над интервалом, и операция применяется к каждой из его границ, поэтому результат зависит от типа элементов границ
>>> shifted_iv = iv + 3 >>> shifted_iv Interval(3, 8, closed='right') >>> extended_iv = iv * 10.0 >>> extended_iv Interval(0.0, 50.0, closed='right')
Для создания временного интервала можно использовать метки времени как границы
>>> year_2017 = pd.Interval(pd.Timestamp('2017-01-01 00:00:00'), ... pd.Timestamp('2018-01-01 00:00:00'), ... closed='left') >>> pd.Timestamp('2017-01-01 00:00') in year_2017 True >>> year_2017.length Timedelta('365 days 00:00:00')Атрибуты
Строка, описывающая сторону интервалов, включенную в него.
Проверка, закрыт ли интервал слева.
Проверка, закрыт ли интервал справа.
Указывает, пустой ли интервал, что означает, что он не содержит точек.
Левая граница интервала.
Возвращает длину интервала.
Возвращает середину интервала.
Проверка, открыт ли интервал слева.
Проверка, открыт ли интервал справа.
Правая граница интервала.
Методы
Проверяет, перекрываются ли два объекта Interval.
© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/1.5.0/reference/api/pandas.Interval.html