Spec-Zone.ru › pandas 1

pandas.interval_range

pandas.interval_range(start=None, end=None, periods=None, freq=None, name=None, closed='right')[source]

Возвращает IntervalIndex с фиксированной частотой.

Параметры
start:числовое или datetime-подобное значение, по умолчанию None

Левая граница для генерации интервалов.

end:числовое или datetime-подобное значение, по умолчанию None

Правая граница для генерации интервалов.

periods:целое число, по умолчанию None

Количество периодов для генерации.

freq:числовое, строковое значение или DateOffset, по умолчанию None

Длина каждого интервала. Должно соответствовать типу start и end, например, 2 для числовых значений или ‘5H’ для datetime-подобных значений. По умолчанию 1 для числовых значений и ‘D’ для datetime-подобных.

name:строка, по умолчанию None

Имя результирующего IntervalIndex.

closed:{‘left’, ‘right’, ‘both’, ‘neither’}, по умолчанию ‘right’

Указывает, закрыты ли интервалы слева, справа, с обеих сторон или ни с одной.

Возвращает
IntervalIndex

См. также

IntervalIndex

Индекс интервалов, все закрытые с одной и той же стороны.

Примечания

Из четырёх параметров start, end, periods, и freq, ровно три должны быть указаны. Если freq опущено, результирующий IntervalIndex будет иметь periods линейно распределённые элементы между start и end, включительно.

Дополнительную информацию о строках частоты datetime-подобных значений см. в этой ссылке.

Примеры

Поддерживаются числовые start и end.

>>> pd.interval_range(start=0, end=5)
IntervalIndex([(0, 1], (1, 2], (2, 3], (3, 4], (4, 5]],
              dtype='interval[int64, right]')

Также поддерживается вход datetime-подобного типа.

>>> pd.interval_range(start=pd.Timestamp('2017-01-01'),
...                   end=pd.Timestamp('2017-01-04'))
IntervalIndex([(2017-01-01, 2017-01-02], (2017-01-02, 2017-01-03],
               (2017-01-03, 2017-01-04]],
              dtype='interval[datetime64[ns], right]')

Параметр freq указывает частоту между левой и правой границами отдельных интервалов в IntervalIndex. Для числовых start и end частота также должна быть числовой.

>>> pd.interval_range(start=0, periods=4, freq=1.5)
IntervalIndex([(0.0, 1.5], (1.5, 3.0], (3.0, 4.5], (4.5, 6.0]],
              dtype='interval[float64, right]')

Аналогично, для datetime-подобных start и end частота должна быть преобразуема в DateOffset.

>>> pd.interval_range(start=pd.Timestamp('2017-01-01'),
...                   periods=3, freq='MS')
IntervalIndex([(2017-01-01, 2017-02-01], (2017-02-01, 2017-03-01],
               (2017-03-01, 2017-04-01]],
              dtype='interval[datetime64[ns], right]')

Укажите start, end, и periods; частота генерируется автоматически (линейно распределена).

>>> pd.interval_range(start=0, end=6, periods=4)
IntervalIndex([(0.0, 1.5], (1.5, 3.0], (3.0, 4.5], (4.5, 6.0]],
          dtype='interval[float64, right]')

Параметр closed определяет, какие концы отдельных интервалов в IntervalIndex закрыты.

>>> pd.interval_range(end=5, periods=4, closed='both')
IntervalIndex([[1, 2], [2, 3], [3, 4], [4, 5]],
              dtype='interval[int64, both]')

© 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_range.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API