我正在尝试使用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')
您可以尝试这个吗?假设您的df
有日期
df.sort_index(inplace=True)
df.groupby(pd.TimeGrouper('M')).nth(2) #This is to get the second day
我假设您已定义:
正如您在代码示例中所写。
要构建日期范围,请使用:
要做的代码是:
rng = pd.date_range(end='2020-06-02', periods=12, freq='MS').shift(1, freq='D')
给予:
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)