31 July 2020
Code
Option # 1: Using .from_product()
# Import library
import pandas as pd
# Create MultiIndex
years = [2020, 2021]
season = ['summer', 'winter']
index = pd.MultiIndex.from_product([years, season],
names=['year', 'season'])
# Create DataFrame
df = pd.DataFrame({
'temperature': [40, 20, 30, 34], # celcius
'humidity': [40, 30, 70, 45] # percent
},
index = index
)
print(df)
print(df.index)
Output
temperature humidity
year season
2020 summer 40 40
winter 20 30
2021 summer 30 70
winter 34 45
MultiIndex([(2020, 'summer'),
(2020, 'winter'),
(2021, 'summer'),
(2021, 'winter')],
names=['year', 'season'])
Option # 2: Using .from_arrays()
# Import library
import pandas as pd
# Create MultiIndex
years = [2020, 2020, 2021, 2021]
season = ['summer','winter','summer','winter']
index = pd.MultiIndex.from_arrays([years, season],
names=['year', 'season'])
# Create DataFrame
df = pd.DataFrame({
'temperature': [40, 20, 30, 34], # celcius
'humidity': [40, 30, 70, 45] # percent
},
index = index
)
print(df)
print(df.index)
Output
temperature humidity
year season
2020 summer 40 40
winter 20 30
2021 summer 30 70
winter 34 45
MultiIndex([(2020, 'summer'),
(2020, 'winter'),
(2021, 'summer'),
(2021, 'winter')],
names=['year', 'season'])
Any errors in code above?
Please send a message.