pandas.timedelta_range#

pandas.timedelta_range(start=None, end=None, periods=None, freq=None, name=None, closed=None, *, unit=None)[源代码]#

返回一个固定频率的 TimedeltaIndex,默认为天。

Parameters:
startstr 或类 timedelta,默认为 None

用于生成 timedeltas 的左边界。

endstr 或类 timedelta,默认为 None

用于生成 timedeltas 的右边界。

periodsint,默认 None

要生成的周期数。

freqstr、Timedelta、datetime.timedelta 或 DateOffset,默认为 ‘D’

频率字符串可以带有倍数,例如“5h”。

namestr,默认 None

生成的 TimedeltaIndex 的名称。

closedstr,默认 None

使区间对给定频率的“左”、“右”或两边(None)都闭合。

unitstr,默认 None

指定结果的所需分辨率。

在 2.0.0 版本加入.

Returns:
TimedeltaIndex

Notes

startendperiodsfreq 这四个参数中,必须指定其中三个。如果省略 freq,生成的 TimedeltaIndex 将在 startend 之间有 periods 个线性间隔的元素(两边都闭合)。

要了解更多关于频率字符串的信息,请参阅 this link

Examples

>>> pd.timedelta_range(start='1 day', periods=4)
TimedeltaIndex(['1 days', '2 days', '3 days', '4 days'],
               dtype='timedelta64[ns]', freq='D')

closed 参数指定了包含哪个端点。默认行为是包含两个端点。

>>> pd.timedelta_range(start='1 day', periods=4, closed='right')
TimedeltaIndex(['2 days', '3 days', '4 days'],
               dtype='timedelta64[ns]', freq='D')

freq 参数指定 TimedeltaIndex 的频率。只能传递固定频率,非固定频率(如 ‘M’(月末))将引发错误。

>>> pd.timedelta_range(start='1 day', end='2 days', freq='6h')
TimedeltaIndex(['1 days 00:00:00', '1 days 06:00:00', '1 days 12:00:00',
                '1 days 18:00:00', '2 days 00:00:00'],
               dtype='timedelta64[ns]', freq='6h')

指定 startendperiods;频率会自动生成(线性间隔)。

>>> pd.timedelta_range(start='1 day', end='5 days', periods=4)
TimedeltaIndex(['1 days 00:00:00', '2 days 08:00:00', '3 days 16:00:00',
                '5 days 00:00:00'],
               dtype='timedelta64[ns]', freq=None)

指定单位

>>> pd.timedelta_range("1 Day", periods=3, freq="100000D", unit="s")
TimedeltaIndex(['1 days', '100001 days', '200001 days'],
               dtype='timedelta64[s]', freq='100000D')