Вытягивание определенных дат из фрейма данных в python

Я использую pandas для очистки базы данных, и у меня есть список дат всего в формате, таком как 08-Jun-2017, 12-Jun-2017 и т. Д. В рамках фреймворка данных. Я хотел бы вытащить все строки, где дата меньше 14 дней с текущей даты. благодаря

Демо-версия:

 In [118]: df = pd.DataFrame({'date': pd.date_range(end='2017-05-05', freq='9D', periods=20)}) \ .sample(frac=1).reset_index(drop=True) In [119]: df Out[119]: date 0 2016-11-15 1 2017-03-30 2 2017-01-17 3 2017-04-17 4 2017-03-12 5 2017-02-22 6 2017-01-08 7 2017-04-26 8 2017-05-05 9 2016-12-03 10 2017-03-03 11 2016-12-21 12 2017-02-04 13 2017-04-08 14 2017-03-21 15 2016-11-24 16 2017-01-26 17 2016-12-30 18 2017-02-13 19 2016-12-12 In [120]: df.loc[df.date > pd.datetime.now() - pd.Timedelta('14 days')] Out[120]: date 7 2017-04-26 8 2017-05-05 

то же решение, но для дат (как строки):

 In [122]: df['dt_str'] = df.date.dt.strftime('%d-%b-%Y') In [123]: df Out[123]: date dt_str 0 2016-11-15 15-Nov-2016 1 2017-03-30 30-Mar-2017 2 2017-01-17 17-Jan-2017 3 2017-04-17 17-Apr-2017 4 2017-03-12 12-Mar-2017 5 2017-02-22 22-Feb-2017 6 2017-01-08 08-Jan-2017 7 2017-04-26 26-Apr-2017 8 2017-05-05 05-May-2017 9 2016-12-03 03-Dec-2016 10 2017-03-03 03-Mar-2017 11 2016-12-21 21-Dec-2016 12 2017-02-04 04-Feb-2017 13 2017-04-08 08-Apr-2017 14 2017-03-21 21-Mar-2017 15 2016-11-24 24-Nov-2016 16 2017-01-26 26-Jan-2017 17 2016-12-30 30-Dec-2016 18 2017-02-13 13-Feb-2017 19 2016-12-12 12-Dec-2016 In [124]: df.loc[pd.to_datetime(df['dt_str'], errors='coerce') >= pd.datetime.now() - pd.Timedelta('14 days')] Out[124]: date dt_str 7 2017-04-26 26-Apr-2017 8 2017-05-05 05-May-2017