El tercer método nos permite especificar los valores (únicos) de los diferentes niveles, creándose el índice jerárquico como resultado del producto escalar de los valores. Por ejemplo:
index = pd.MultiIndex.from_product(
[
[2018, 2019],
["Spain", "Portugal", "France"]
],
names = ["Year", "Country"]
)
index
MultiIndex([(2018, 'Spain'),
(2018, 'Portugal'),
(2018, 'France'),
(2019, 'Spain'),
(2019, 'Portugal'),
(2019, 'France')],
names=['Year', 'Country'])
Nuevamente, el parámetro names nos permite dar nombre a los niveles.
El resultado de llevar este índice a nuestro DataFrame es el ya conocido:
data = pd.DataFrame(data = [18, 20, 10, 15, 12, 18], index = index, columns = ["Sales"])
data