[英]Generate a list of years with the same month and day
我想生成不同年份同一月份和同一天的'%Y-%m-%d'
列表。
我试过了
import pandas as pd
pd.date_range('2014-04-01', '2018-04-01', freq='BYS').strftime("%Y-%m-%d").tolist()
它返回['2015-01-01', '2016-01-01', '2017-01-02', '2018-01-01']
预期结果['2014-04-01, '2015-04-01, '2016-04-01', '2017-04-01', '2018-04-01']
由于您想按年份生成2014-04-01
和2018-04-01
之间的日期时间,因此04-01
是月份的开始日期。 您可以使用频率12MS
,其中12M
是 12 个月, S
是月份开始。
pd.date_range('2014-04-01', '2018-04-01', freq='12MS').strftime("%Y-%m-%d").tolist()
['2014-04-01', '2015-04-01', '2016-04-01', '2017-04-01', '2018-04-01']
如果要按年份生成2014-04-02
和2018-04-02
之间的日期时间,可以在2014-04-02
和2018-04-02
之间的生成日期上添加偏移量。
(pd.date_range('2014-04-01', '2018-04-01', freq='12MS') + pd.DateOffset(days=1)).strftime("%Y-%m-%d").tolist()
['2014-04-02', '2015-04-02', '2016-04-02', '2017-04-02', '2018-04-02']
pd.date_range('2014-04-02', '2018-04-02', freq='12MS')
不起作用的原因是12MS
在2014-04-02
和2018-04-02
之间生成月份开始即2014-05-01
到2017-05-01
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.