fr1 = df.groupby(df.index.year * 100 + df.index.month).apply(lambda x: x[(x
    .index.week == 1) * (x.index.weekday == 4)])
fr3 = df.groupby(df.index.year * 100 + df.index.month).apply(lambda x: x[(x
    .index.week == 3) * (x.index.weekday == 4)])
Как выбрать наблюдения df с использованием атрибутов datetimeindex в Pandas?