df = df.stack().rename_axis(('a','b','c')).reorder_levels([2,0,1]).sort_index()
print (df)
c a b
2014 A A1 1
A1 9
B B1 9
B2 1
2015 A A1 5
A1 4
B B1 1
B2 7
2016 A A1 5
A1 1
B B1 6
B2 7
dtype: int64
如果需要columns来自Multiindex:
^{pr2}$
编辑:
您需要通过参数index_col将第一列和第二列转换为Multiindex:
tab3 = "C:\\Users\\abk29\\NordicMontlyDemand\\NordicDY\\Book1.xls"
df = pd.read_excel(tab3, sheetname="Sheet1", skiprows=2, index_col=[0,1])
print (df)
2016 2017 2018
Unnamed: 1
A A1 1 1 1
A2 2 2 2
B B1 3 3 3
B2 4 4 4
df = df.stack().rename_axis(('a','b','c')).reorder_levels([2,0,1]).sort_index()
print (df)
c a b
2016 A A1 1
A2 2
B B1 3
B2 4
2017 A A1 1
A2 2
B B1 3
B2 4
2018 A A1 1
A2 2
B B1 3
B2 4
dtype: int64
我认为你需要:
如果需要
^{pr2}$columns
来自Multiindex
:编辑:
您需要通过参数
index_col
将第一列和第二列转换为Multiindex
:IIUC:
相关问题 更多 >
编程相关推荐