Как добавить строку для отсортированного многоиндексного фрейма данных?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как добавить строку для отсортированного многоиндексного фрейма данных?

Сообщение Anonymous »

У меня есть мультииндексный фрейм данных, полученный из groupby.
Вот демо:

Код: Выделить всё

In [54]: df = pd.DataFrame({'color': ['blue', 'grey', 'blue', 'grey', 'black'], 'name': ['pen', 'pen', 'pencil', 'pencil', 'box'],'price':[2.5, 2.3, 1.5, 1.3, 5.2],'bprice':[2.2, 2, 1.3, 1.2, 5.0]})

In [55]: df
Out[55]:
color    name  price  bprice
0   blue     pen    2.5     2.2
1   grey     pen    2.3     2.0
2   blue  pencil    1.5     1.3
3   grey  pencil    1.3     1.2
4  black     box    5.2     5.0

In [56]: a = df.groupby(['color', 'name'])[['price', 'bprice']].sum()

In [57]: a
Out[57]:
price  bprice
color name
black box       5.2     5.0
blue  pen       2.5     2.2
pencil    1.5     1.3
grey  pen       2.3     2.0
pencil    1.3     1.2
Я хочу добавить строку в каждый индекс цвета. Идеальный результат:

Код: Выделить всё

              price  bprice
color name
black *         5.2     5.0
box       5.2     5.0
blue  *         4.0     3.5
pen       2.5     2.2
pencil    1.5     1.3
grey  *         3.6     3.2
pen       2.3     2.0
pencil    1.3     1.2
Существует два требования:
  • Новая строка * должна находиться в первой строке каждого group
  • ожидайте строку *, другая строка должна быть отсортирована по цене
Я перепробовал много методов, но не нашел элегантного метода. Вставить строку в мультииндексный фрейм данных с указанной позицией кажется сложной задачей.
не могли бы вы с этим помочь?

Подробнее здесь: https://stackoverflow.com/questions/791 ... -dataframe
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»