Если я использую Начальную дату как 01.01.2009 и Конечную дату как 1/7/2019, фильтрация должна быть выполнена так, как я хочу, чтобы записи имели дату окончания до 1/7/2019, даже еслидата начала не в пределах 01.01.2009
Итак ... если я правильно понимаю, все, что вы хотите от нас, это отфильтровать дату окончания?Если дата начала может быть вне диапазона, вы не фильтруете ее.Я предполагаю, что вы хотите, чтобы дата окончания между двумя диапазонами дат: start < end dates < end
Предполагается, что ваши данные в формате даты и времени:
import pandas as pd
from datetime import datetime
start_date = datetime_object = datetime.strptime('6/2/2018', '%m/%d/%Y')
end_date = datetime_object = datetime.strptime('12/2/2018', '%m/%d/%Y')
sub_set = dates[dates["end_date"].apply(lambda x: start_date <= datetime.strptime(x, '%m/%d/%Y') <= end_date)]
display (subset)
output:
dates
0 8/3/2018
1 9/13/2018
3 7/10/2018
4 10/20/2018
6 8/13/2018
7 10/8/2018
9 10/22/2018
12 8/30/2018
13 11/18/2018
14 7/3/2018
15 7/26/2018
19 10/20/2018
23 9/3/2018
24 10/19/2018
27 8/31/2018
30 9/27/2018
34 8/3/2018
36 8/26/2018
40 7/11/2018
41 9/6/2018
42 9/16/2018
48 8/22/2018