Я использую встроенные методы панд, как в серии, такие как:
.sum()
.mean()
.median()
Я заметил в документации, что все они имеют необязательный параметр уровня, описанный в документации следующим образом:
level : int or level name, default None
If the axis is a MultiIndex (hierarchical), count along a particular level, collapsing into a scalar
пример этого для медианного метода можно найти здесь:
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.median.html
В любом случае, я использовал их в многоиндексных сериях, например:
ser.sum(level=[0, 1, 2]).unstack(2).stack()
ser.mean(level=[0, 1, 2]).unstack(2).stack()
Теперь у меня есть необходимость использовать режим расчета таким же образом, как я использую другие вычисления для многоиндексных рядов.
Я пробовал это:
ser.mode(level=[0, 1, 2]).unstack(2).stack()
Но это говорит мне, что уровень не является допустимым параметром для метода mode, и документация подтверждает это:
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.mode.html
Полагаю, мне любопытно, почему у режима нет этого необязательного параметра, когда его методы брат / сестра кажутся и, что более важно, как я могу достичь функционального эквивалента:
ser.mode(level=[0, 1, 2]).unstack(2).stack()
в пандах?