pandas.Interval
-
class pandas.Interval -
Неизменяемый объект, реализующий интервал, ограниченный интервал-подобный срез.
Новая версия 0.20.0.
Параметры: -
left : orderable scalar -
Левая граница интервала.
-
right : orderable scalar -
Правая граница интервала.
-
closed : {‘left’, ‘right’, ‘both’, ‘neither’}, default ‘right’ -
Закрыт ли интервал слева, справа, с обеих сторон или ни с какой.
-
closed : {‘right’, ‘left’, ‘both’, ‘neither’}, default ‘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
Можно проверить границы (
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')
Для создания временного интервала можно использовать Timestamps в качестве границ
>>> 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')Также можно создавать строковые интервалы
>>> volume_1 = pd.Interval('Ant', 'Dog', closed='both') >>> 'Bee' in volume_1 TrueАтрибуты
closedЗакрыт ли интервал слева, справа, с обеих сторон или ни с какой closed_leftПроверка, закрыт ли интервал слева. closed_rightПроверка, закрыт ли интервал справа. leftЛевая граница интервала lengthВозвращает длину интервала midВозвращает середину интервала open_leftПроверка, открыт ли интервал слева. open_rightПроверка, открыт ли интервал справа. rightПравая граница интервала Методы
overlapsПроверка перекрытия двух объектов Interval. -
© 2008–2012, 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/0.24.2/reference/api/pandas.Interval.html