最具效果的是什么'如果DataFrame具有包含日期时间索引的多索引,那么按时间过滤DataFrame的方法是什么?
例如,如何仅在多索引中包含的日期时间索引中过滤营业时间。
答案 0 :(得分:0)
如何仅在多索引中包含的日期时间索引中过滤营业时间。
df.index.get_level_values(1).hour.isin([9,10,11,13,14,15,16])
这只是一个例子 - 过滤MultiIndex的第二级,这是一个日期时间列,并获得一个布尔值掩码,即小时为9到5,不包括午休时间。
需要更高的精度吗?
dt = df.index.get_level_values(1)
minutes = dt.hour * 60 + dt.minute
minutes.between(8*60+15, 17*60+45)
那是8:15到17:45。
午睡?
minutes.between(9*60+30, 15*60) | minutes.between(17*60+30, 20*60)