pandas.Interval#
- класс pandas.Interval#
Неизменяемый объект, реализующий Interval, ограниченный интервал, похожий на срез.
- Параметры:
- leftупорядочиваемый скаляр
Левая граница интервала.
- правыйупорядочиваемый скаляр
Правая граница интервала.
- закрыт{‘right’, ‘left’, ‘both’, ‘neither’}, по умолчанию ‘right’
Закрыт ли интервал слева, справа, с обеих сторон или ни с одной. См. примечания для более подробного объяснения.
Смотрите также
IntervalIndexИндекс объектов Interval, которые все закрыты с одной стороны.
cutПреобразование непрерывных данных в дискретные бины (Categorical из объектов Interval).
qcutПреобразование непрерывных данных в бины (категориальные объекты Interval) на основе квантилей.
PeriodПредставляет период времени.
Примечания
Параметры left и правый должны быть одного типа, вы должны быть способны сравнивать их, и они должны удовлетворять
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
Вы можете работать с + и * над Interval и операция применяется к каждой из его границ, поэтому результат зависит от типа элементов границы
>>> 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')
Атрибуты
Строка, описывающая включенную сторону интервалов.
Проверить, закрыт ли интервал с левой стороны.
Проверить, закрыт ли интервал с правой стороны.
Указывает, является ли интервал пустым, то есть не содержит точек.
Левая граница интервала.
Возвращает длину интервала.
Возвращает середину интервала.
Проверить, открыт ли интервал с левой стороны.
Проверяет, открыт ли интервал с правой стороны.
Правая граница интервала.
Методы
overlaps(other)Проверить, перекрываются ли два объекта Interval.