У меня есть df данных. Мне нужно иметь возможность возвращать определенные строки данных в зависимости от дня недели.
Если это понедельник, мне нужно напечатать строки, которые содержат данные за последние 3 дня.
Если это среда или пятница, мне нужно напечатать строки, которые содержат данные за последние два дня.
Объединение двух df для создания одного:
df_new = pd.concat([outcomes_df, specialists_df], ignore_index=True)
df_new['Published Date'] = pd.to_datetime(df_new['Published Date'])
Получение правильных дат на основе сегодняшней даты:
N=0
if datetime.today().weekday() == 0:
N = 3
elif datetime.today().weekday() == 2 or datetime.today().weekday() == 4:
N = 2
else:
pass
mydate = datetime.now() - timedelta(days=N)
print(mydate)
Фильтрация по диапазону дат
df_new = df_new[(df_new['Published Date'] >= mydate) & (df_new['Published Date'] <= datetime.today())]
print(mydate)
приводит к правильной дате
print(df_new)
приводит к ошибке:
Пустой фрейм данных
Столбцы: [col1, col2, col3, Дата публикации]
Индекс: []