Двухэтажные название колонок

После комплексной группировки таблицы pandas Pynhon dataframe командой groupby напрмер применив такую строку

# сколько заказов у каждого покупателя
agg_func_count = {'order_id': ['count'],
                    'sum_product': [ 'sum']}
count_orders_customer = df.groupby('customer_id')['order_id', 'sum_product'].agg(agg_func_count).reset_index()

Получаем двухэтажное название колонок в итоговой таблице.

Ещё они называются иерархические индексы

Пример dataframe с двухэтажными колонками

Выглядит это очень красиво. Но при попытке обратиться к колонке по названию, возникает сложность.

Что же делать?

Трансформировать иерархические названия столбцов pandas

Вот непонятная, но эффективная строка для этого

count_orders_customer.columns = ['_'.join(col).rstrip('_') for col in count_orders_customer.columns.values]

И получим результат сглаживания

Не земетили подвох?
Статья понравилась?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *