Python: Pandas: Multiindex dla data frame

31-maj-2020

Zazwyczaj kiedy pracujemy z data frame i mamy dane powstające wskutek grupowania wpadamy na pomysł założenia multiindeksu dla wierszy. Jednak czasami specyfika danych jest taka, że nawet struktura w kolumnach ma postać pogrupowaną, więc zgodną ze strukturą multiindeksu. Jak więc zbudować multiindeks zarówno na wierszach, jak i na kolumnach? Oto prosty przykład, który ilustruje ten proces:

Więcej na ten temat: https://pandas.pydata.org/pandas-docs/stable/user_guide/advanced.html

import pandas as pd

colindex = pd.MultiIndex.from_tuples(
    (('Green','L'),('Green','XL'),('Blue','L'),('Blue','XL')),
     names=('Color','Size')
 )

rowindex = pd.MultiIndex.from_tuples(
    (('T-Shirt','Class 1'),('T-Shirt','Class 2'),
     ('Jeans','Class 1'),('Jeans','Class 2')),
    names=('Type', 'Quality')
)

data = [
    [11,12,13,14],
    [21,22,23,24],
    [31,32,33,34],
    [41,42,43,44]
]

df = pd.DataFrame(data = data,
       index = rowindex,
       columns = colindex)

df

Komentarze są wyłączone

Autor: Rafał Kraik