2017-09-09 5 views

답변

0

다중 인덱스에 포함 된 datetime 인덱스에서만 업무 시간을 필터링하는 방법. 하나의 예입니다

df.index.get_level_values(1).hour.isin([9,10,11,13,14,15,16]) 

은 - 날짜 시간 열입니다 MultiIndex의 두 번째 수준의 필터링하고 점심 시간을 제외하고 9-5 시간이 어디 true 인 부울 마스크를 얻을.

더 정밀도가 필요하십니까?

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) 
+0

@jezrael : Thanks. –