多索引unstack后的列顺序

Column order after multi-index unstack

拆包数据后的输出。我使用多列取消堆叠 展开(['MarketDate','Class'])

MarketDate    2017/08/19 2017/08/18         2017/08/19
Class             Onpeak     Onpeak Offpeak    Offpeak
Constraint_ID                                         
634              -221.65    -165.28 -116.55    -237.97
644                 0.00       2.22    0.00       0.00
1049             -702.05    -936.26 -317.45    -181.72
1281                0.00      -4.68    0.00       0.00
1607             -136.12     -84.74  -31.44     -65.91

我需要在输出中看到的是 MarketDate 及其下方的 Onpeak 和 Offpeak,而不是先是 Onpeaks 的 MarketDate,然后是 Offpeaks。

这对进一步处理很重要。

感谢任何帮助。

IIUC,你需要 sort_indexaxis=1

df.sort_index(axis=1)