Я изо всех сил пытаюсь переиндексировать мультииндекс. Пример кода ниже:Проблема с переиндексированием multiindex
rng = pd.date_range('01/01/2000 00:00', '31/12/2004 23:00', freq='H')
ts = pd.Series([h.dayofyear for h in rng], index=rng)
daygrouped = ts.groupby(lambda x: x.dayofyear)
daymean = daygrouped.mean()
myindex = np.arange(1,367)
myindex = np.concatenate((myindex[183:],myindex[:183]))
daymean.reindex(myindex)
дает (как и ожидалось):
184 184
185 185
186 186
187 187
...
180 180
181 181
182 182
183 183
Length: 366, dtype: int64
НО если я создаю MULTINDEX:
hourgrouped = ts.groupby([lambda x: x.dayofyear, lambda x: x.hour])
hourmean = hourgrouped.mean()
myindex = np.arange(1,367)
myindex = np.concatenate((myindex[183:],myindex[:183]))
hourmean.reindex(myindex, level=1)
я получаю:
1 1 1
2 1
3 1
4 1
...
366 20 366
21 366
22 366
23 366
Length: 8418, dtype: int64
Любые идеи по моей ошибке? - Благодаря.
Беван
Re уровня индекса у меня действительно как 0 (изменено 1, чтобы увидеть, если я мог бы получить что-нибудь работать ...). Спасибо, что очень хорошо отвечает на мой вопрос и дает мне больше понимания. – bevanj