使用inferred_freq设置pandas.tseries.index.DatetimeIndex.freq

考虑DatetimeIndex tidx

tidx = pd.to_datetime(['2016-07-29', '2016-08-31', '2016-09-30'])
print(tidx.freq)
print(tidx.inferred_freq)
print(tidx)

None
BM
DatetimeIndex(['2016-07-29', '2016-08-31', '2016-09-30'], \
              dtype='datetime64[ns]', freq=None)

我希望freq属性假设inferred_freq属性…所以我

tidx.freq = tidx.inferred_freq
print(tidx)

06002


让我的索引假设它是inferred_freq的合适方法是什么?

最佳答案 目前还不清楚为什么文档声明你可以设置freq属性但是它不会持久但是如果你再次重建datetimeindex但传递一个freq参数然后它可以工作:

In [56]:
tidx = pd.DatetimeIndex(tidx.values, freq = tidx.inferred_freq)
tidx

Out[56]:
DatetimeIndex(['2016-07-29', '2016-08-31', '2016-09-30'], dtype='datetime64[ns]', freq='BM')
点赞