pandas.interval_range
-
pandas.interval_range(start=None, end=None, periods=None, freq=None, name=None, closed='right')[source] -
Возвращает IntervalIndex с фиксированной частотой
Параметры: -
start : numeric or datetime-like, default None -
Левая граница для генерации интервалов
-
end : numeric or datetime-like, default None -
Правая граница для генерации интервалов
-
periods : integer, default None -
Количество периодов для генерации
-
freq : numeric, string, or DateOffset, default None -
Длина каждого интервала. Должна быть согласована с типом начала и конца, например, 2 для числовых значений или ‘5H’ для значений типа datetime. По умолчанию 1 для числовых и ‘D’ для datetime-подобных.
-
name : string, default None -
Имя результирующего IntervalIndex
-
closed : {‘left’, ‘right’, ‘both’, ‘neither’}, default ‘right’ -
Закрыты ли интервалы слева, справа, с обеих сторон или ни с одной.
Возвращает: -
rng : 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]], closed='right', dtype='interval[int64]')Кроме того, поддерживаются входные данные типа 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]], closed='right', dtype='interval[datetime64[ns]]')Параметр
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]], closed='right', dtype='interval[float64]')Аналогично, для 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]], closed='right', dtype='interval[datetime64[ns]]')Укажите
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]], closed='right', dtype='interval[float64]')Параметр
closedопределяет, какие концы отдельных интервалов вIntervalIndexзакрыты.>>> pd.interval_range(end=5, periods=4, closed='both') IntervalIndex([[1, 2], [2, 3], [3, 4], [4, 5]], closed='both', dtype='interval[int64]') -
© 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_range.html