For a given table:
df = pd.DataFrame( {
'datetime': ['2015-01-01', '2015-04-01', '2015-07-01', '2015-12-01', '2015-01-01', '2015-04-01', '2015-07-01', '2015-12-01'],
})
df['datetime'] = pd.to_datetime(df['datetime'])
I would like like to change all the dates that fall on weekends (so weekday==5 or weekday==6) to the Friday before, so something like this:
def adjust_exp_date(x):
if x.weekday()==5:
x.weekday() -= 1
if x.weekday()==6:
x.weekday() -= 2
df['datetime'].apply(adjust_exp_date)