#python #python-3.x #pandas
#python #python-3.x #pandas
Вопрос:
У нас есть фрейм данных Pandas со столбцами start_date и end_date (формат ввода приведен ниже). Мне нужно проверить, присутствует ли данный диапазон времени ввода между start_date и end_date.
Например, если временной диапазон равен 09:30-10:30, вывод должен быть в первой строке (студент1), а если временной диапазон равен 16:00-17:30, вывод должен быть во второй строке (студент2). Пожалуйста, подскажите мне, как я могу этого добиться.
Входной фрейм данных:
name start_date end_date
0 student1 2020-08-30 09:00:00 2020-08-30 10:00:00
1 student2 2020-08-30 15:00:00 2020-08-30 18:00:00
2 student3 2020-08-30 11:00:00 2020-08-30 12:30:00
Ответ №1:
Предположим, что ваши столбцы даты имеют datetime
формат:
from datetime import datetime
start_time = datetime(2020, 1, 1, 9, 30)
end_time = datetime(2020, 1, 1, 10, 30)
df['start_date'].dt.time.le(end_time.time())amp;df['end_date'].dt.time.ge(start_time.time())