pandas.date_range 自定义频率

Mik*_*ike 1 date-range pandas

我正在尝试使用 pd.date_range 生成一个日期列表,用于捕获 12 个月滚动场景中该月的第二天。我不太知道如何结合文档中的频率别名来实现这一点。下面是我所在的位置和输出。我倒要看看

['2020-05-02', '2020-04-02', '2020-03-02'...]

pd.date_range(end='2020-06-02',periods=12,freq=)

DatetimeIndex(['2020-05-22', '2020-05-23', '2020-05-24', '2020-05-25',
               '2020-05-26', '2020-05-27', '2020-05-28', '2020-05-29',
               '2020-05-30', '2020-05-31', '2020-06-01', '2020-06-02'],
              dtype='datetime64[ns]', freq='D')
Run Code Online (Sandbox Code Playgroud)

Val*_*_Bo 5

我假设您已经定义了:

  • 结束日期,
  • 周期数,

正如您在代码示例中所写。

要构建您的日期范围,请使用:

  • date_rangeMS(月份开始)频率,
  • 加上轮班1天。

执行此操作的代码是:

rng = pd.date_range(end='2020-06-02', periods=12, freq='MS').shift(1, freq='D')
Run Code Online (Sandbox Code Playgroud)

给予:

DatetimeIndex(['2019-07-02', '2019-08-02', '2019-09-02', '2019-10-02',
               '2019-11-02', '2019-12-02', '2020-01-02', '2020-02-02',
               '2020-03-02', '2020-04-02', '2020-05-02', '2020-06-02'],
              dtype='datetime64[ns]', freq=None)
Run Code Online (Sandbox Code Playgroud)

这个时间freqNone意思是:从每月的第二天开始,每个月没有“频率缩写”(有 月份开始月份结束的缩写),但生成的日期绝对如您所愿。