Pandas period_range(~) 方法返回固定频率的 PeriodIndex 。 Period 表示特定的时间跨度或持续时间。 PeriodIndex 最常用作 DataFrame 的索引。
参数
1.start | string 或 period-like | optional
范围的下限(含)。默认情况下,start=None 。
2. end | string 或 period-like | optional
范围的上限(含)。默认情况下,end=None 。
3. periods | int | optional
所需的周期数。默认情况下,periods=None 。
警告
在上述三个参数中,必须指定两个 - 不能少,不能多。
4. freq | string 或 DateOffset | optional
一对连续日期之间的步长(间隔大小)。默认情况下,freq="D"(一天的步长)。
5. name | string | optional
分配给结果 PeriodIndex 的名称。默认情况下,name=None 。
返回值
一个 PeriodIndex 。
例子
基本用法
要创建从 2020-12-25 到 2020-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
相关用法
- Python Django permission_denied用法及代码示例
- Python Django permission_required用法及代码示例
- Python NumPy percentile方法用法及代码示例
- Python pandas.arrays.IntervalArray.is_empty用法及代码示例
- Python pyspark.pandas.Series.dropna用法及代码示例
- Python pyspark.pandas.groupby.SeriesGroupBy.unique用法及代码示例
- Python pandas.DataFrame.ewm用法及代码示例
- Python pandas.api.types.is_timedelta64_ns_dtype用法及代码示例
- Python pandas.DataFrame.dot用法及代码示例
- Python pandas.DataFrame.apply用法及代码示例
- Python pyspark.pandas.Series.dt.weekday用法及代码示例
- Python pyspark.pandas.DataFrame.select_dtypes用法及代码示例
- Python Pandas pivot方法用法及代码示例
- Python pyspark.pandas.date_range用法及代码示例
- Python pyspark.pandas.isnull用法及代码示例
- Python pyspark.pandas.Series.hasnans用法及代码示例
- Python pandas.DataFrame.combine_first用法及代码示例
- Python pyspark.pandas.Series.rmul用法及代码示例
- Python pyspark.sql.functions.grouping_id用法及代码示例
- Python pyspark.pandas.Series.str.repeat用法及代码示例
- Python pyspark.pandas.DataFrame.groupby用法及代码示例
- Python pandas.Series.iloc用法及代码示例
- Python pyspark.ml.feature.DCT用法及代码示例
- Python pandas.Timestamp.to_numpy用法及代码示例
- Python pyspark.sql.functions.hours用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas | period_range method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
