如何使resample生成的月末日期匹配原始DataFrame的实际交易日?
解决resample月末日期与实际最后交易日不符的问题
要让重采样结果的索引显示当月实际最后交易日而非日历月末,只需将重采样频率从'M'改为'BM'(营业月末,即当月最后一个工作日):
test_resample = df.resample('BM').last()
说明:
'M'频率固定取日历当月最后一天作为索引,不管该日期是否有交易数据;'BM'频率会自动匹配当月存在交易数据的最后一个营业日,索引和数值都对应实际交易日。
以你的数据为例,执行后得到的结果会是:
DATE 2005-12-29 1162.635 2006-01-31 1232.321
如果你的交易日期包含特殊假期(非标准工作日),可以自定义日期偏移规则,但'BM'在常规交易场景下足够适用。
内容的提问来源于stack exchange,提问作者stvlam22
相关产品推荐
相关产品推荐

