You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Polars中创建指定周期数的date_range(类Pandas的periods参数)

在Polars中实现Pandas的periods参数创建日期范围的方法

在Pandas中,我们常用periods参数快速生成指定长度的日期范围:

import pandas as pd

pd.date_range(start='1/1/2018', periods=8)

输出:

DatetimeIndex(['2018-01-01', '2018-01-02', '2018-01-03', '2018-01-04',
               '2018-01-05', '2018-01-06', '2018-01-07', '2018-01-08'],
              dtype='datetime64[ns]', freq='D')

Polars的pl.date_range确实没有periods参数,但有两种简便的替代方式:

方法一:计算结束日期

通过将起始日期加上periods-1个时间单位,得到结束日期后传入pl.date_range:

import polars as pl

start = '1/1/2018'
periods = 8
# 计算结束日期:起始日期 + (周期数-1)天
end = pl.lit(start).str.to_date() + pl.duration(days=periods-1)
date_range = pl.date_range(start=start, end=end)
print(date_range)

输出:

shape: (8,)
Series: '' [datetime[μs]]
[
    2018-01-01
    2018-01-02
    2018-01-03
    2018-01-04
    2018-01-05
    2018-01-06
    2018-01-07
    2018-01-08
]

方法二:使用limit直接截取(更简便)

pl.date_range如果不指定end参数,会默认按指定间隔无限生成日期,直接用limit()截取需要的数量即可:

import polars as pl

date_range = pl.date_range(start='1/1/2018', interval='1d').limit(8)
print(date_range)

这个方法和Pandas的periods用法逻辑完全一致,代码更简洁,是推荐的做法。

内容的提问来源于stack exchange,提问作者Andi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 11:27:38