python/pandas - Вхождение во временной интервал
Имеется заведение, которое работает круглосуточно. В датафрейме имеется информация о том, во сколько клиент посещал заведение (например, с 07:30 до 09:05) (два столбца, когда пришел и когда ушел). Таких строк более 10тыс.
При этом, руководство хочет знать, сколько % от общего количества людей приходится на самое загруженное время заведения? (с 9:00 до 11:00).
Хочу получить количество минут для каждой строки, которая входит в этот указанный интервал, но не понимаю, как это можно реализовать. Например, в примере выше, это были бы только 5 минут (4,16% входит в целевой интервал времени).
Ответы (1 шт):
- Просматриваем все строки и удаляем те, в которых ни начало ни конец не попадают в интервал 9:00 - 11:00
- Просматриваем все оставшиеся строки и анализируем начало и конец:
- Если начало раньше 9:00 -> сдвигаем до девяти
- Если конец позже 11:00 -> сдвигаем на 11
- В каждой строке вычисляем разность - получаем время пребывания.
Но зачем Вам это нужно?! На вопрос начальства это ответить не поможет. Ответ на этот вопрос даёт просто количество строк, оставшихся в датафрейме после 1. И всё...