df_t_shift = df.shift()
df_t_shift.loc[0, 'time'] = df_t_shift['time'].iloc[1].normalize()
df_t_shift = df_t_shift.append(df.iloc[-1], ignore_index=True)
for _, grp in df_t_shift.groupby(pd.TimeGrouper(key='time', freq='9D')):
    pass
Группировка Pandas DataFrame по n дням, начиная с начала дня