Por último, podemos crear el multi-índice a partir de un DataFrame en el que cada columna coincide con una columna del multi-índice. Comencemos creando el DataFrame:
df = pd.DataFrame({
"Year":[2018, 2018, 2018, 2019, 2019, 2019],
"Country": ["Spain", "Portugal", "France", "Spain", "Portugal", "France"]
})
df
Ahora podemos crear el índice:
index = pd.MultiIndex.from_frame(df)
index
MultiIndex([(2018, 'Spain'),
(2018, 'Portugal'),
(2018, 'France'),
(2019, 'Spain'),
(2019, 'Portugal'),
(2019, 'France')],
names=['Year', 'Country'])
...y nuestro DataFrame con índice jerárquico:
data = pd.DataFrame(data = [18, 20, 10, 15, 12, 18], index = index, columns = ["Sales"])
data