Это временно создает столбец только с датой, затем подсчитывает указанный столбец и помещает его в новый столбец, называемый count в реальном фрейме данных.
dff["counts"] = dff.assign(date_col = lambda x: x.index.date).groupby(['date_col']).transform('count')
Вот все, что нужно вставить в IDE и проверить:
import pandas as pd
dff = pd.DataFrame(['red','red','blue'],
columns = ['colors'],
index = [pd.Timestamp('2019-09-19 14:03:20'),pd.Timestamp('2019-09-19 17:03:20'),pd.Timestamp('2019-09-20 14:03:20')])
dff["counts"] = dff.assign(date_col = lambda x: x.index.date).groupby(['date_col']).transform('count')
print(dff)
И результат:
colors counts
2019-09-19 14:03:20 red 2
2019-09-19 17:03:20 red 2
2019-09-20 14:03:20 blue 1