Я пытаюсь выполнить сортировку по нескольким уровням группового многоиндексного фрейма данных на основе агрегированного значения. Для идеи о чем я говорю:
У меня есть иерархический набор данных, который затем группируется на нескольких уровнях. Затем я собираю и суммирую определенную меру по ним. Затем я хочу оценить их друг в друге.
На уровне 0 значения должны быть ранжированы по убыванию на основе суммы упомянутой меры. Затем на уровне 1 значения должны быть ранжированы в порядке убывания снова на основе суммы указанной меры, уровня 2 и т. Д.
Как группировать, как сортировать на каждом уровне?
Я знаю, что приводить пример сложно, но если бы я мог указать правильное направление, это было бы здорово, спасибо
EDIT:
Исходные данные:
pd.DataFrame(data=[['a','car',6], ['a','bike',7], ['a','car',8], ['b','bike',9], ['b','car',10], ['b','bike',11]], columns=['a', 'b', 'c'])
GroupBy:
df.groupby(['a','b']).agg({'c':'sum'})
Желаемый выход после сброса индекса:
pd.DataFrame(data=[['b','bike',20], ['b','car',10], ['a','car',14], ['a','bike',7]], columns=['a', 'b', 'c'])