I am using this method:
df = pd.DataFrame({'date': [datetime(2021, 11, 1, 13, 30), datetime(2021, 11, 2, 13, 31), datetime(2021, 11, 3, 13, 32), datetime(2021, 11, 1, 13, 33)],
'value': [1, 2, 3, 5]})
df = df.set_index('date')
df = df.loc[
(df.index.time >= datetime.strptime("13:30", '%H:%M').time()) & \
(df.index.time < datetime.strptime("13:32", '%H:%M').time())]
Is there any better way?
I tried to use between():
df = df.loc[
df.index.time.between(
datetime.strptime("13:30", '%H:%M').time(),
datetime.strptime("13:32", '%H:%M').time())]
It generates an error:
'numpy.ndarray' object has no attribute 'between'
And I didn't manage to find an appropriate numpy function.