当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Pandas period_range方法用法及代码示例


Pandas period_range(~) 方法返回固定频率的 PeriodIndex Period 表示特定的时间跨度或持续时间。 PeriodIndex 最常用作 DataFrame 的索引。

参数

1.start | stringperiod-like | optional

范围的下限(含)。默认情况下,start=None

2. end | stringperiod-like | optional

范围的上限(含)。默认情况下,end=None

3. periods | int | optional

所需的周期数。默认情况下,periods=None

警告

在上述三个参数中,必须指定两个 - 不能少,不能多。

4. freq | stringDateOffset | optional

一对连续日期之间的步长(间隔大小)。默认情况下,freq="D"(一天的步长)。

5. name | string | optional

分配给结果 PeriodIndex 的名称。默认情况下,name=None

返回值

一个 PeriodIndex

例子

基本用法

要创建从 2020-12-252020-12-27(包括两者)的日期序列:

pd.period_range(start="2020-12-25", end="2020-12-27")



PeriodIndex(['2020-12-25', '2020-12-26', '2020-12-27'], dtype='period[D]', freq='D')

默认步长(频率)是一天,因此这就是我们在输出中看到 freq="D" 的原因。

指定期间

要从 2020-12-25(含)创建长度为 3 的日期序列:

pd.period_range(start="2020-12-25", periods=3)



PeriodIndex(['2020-12-25', '2020-12-26', '2020-12-27'], dtype='period[D]', freq='D')

指定频率

在 Pandas 中,频率可以被认为是一个周期的长度。默认频率为 1 天。

让我们尝试 2 天的间隔:

pd.period_range(start="2020-12-25", periods=3, freq="2D")



PeriodIndex(['2020-12-25', '2020-12-27', '2020-12-29'], dtype='period[2D]', freq='2D')

请注意我们如何将指定的 freq="2D" 编码到生成的 PeriodIndex 中。

现在让我们尝试 1 个月的间隔:

pd.period_range(start="2020-12-25", periods=3, freq="M")



PeriodIndex(['2020-12', '2021-01', '2021-02'], dtype='period[M]', freq='M')

请注意,我们也可以使用 freq="1M" 来达到相同的效果。

指定名称

为生成的 PeriodIndex 命名:

pd.period_range(start="2020-12-25", periods=3, name="My Dates")



PeriodIndex(['2020-12-25', '2020-12-26', '2020-12-27'], dtype='period[D]', name='My Dates', freq='D')

请注意我们如何将 name="My Dates" 编码到 PeriodIndex 中。

使用PeriodIndex作为DataFrame的索引

要使用 PeriodIndex 初始化 DataFrame:

idx = pd.period_range(start="2020-12-25", periods=3)
pd.DataFrame({"A":["a","b","c"]}, index=idx)



            A
2020-12-25  a
2020-12-26  b
2020-12-27  c

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas | period_range method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。