You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

多索引DataFrame多列排序:按Mode降序、Symbol升序排序

解决多索引DataFrame排序问题

你的问题出在多索引列的指定方式上:因为你的DataFrame列是双层索引(MultiIndex),Mode和Symbol列的第一级索引是空字符串,第二级才是列名,直接写['Mode', 'Symbol']无法匹配到正确的列。

正确实现代码

# 按Mode降序、Symbol升序排序,生成新的排序后DataFrame
df_sorted = df.sort_values(by=[('', 'Mode'), ('', 'Symbol')], ascending=[False, True])

验证列索引结构

如果不确定列的完整索引,可以先打印列信息确认:

print(df.columns)

输出会显示列的双层索引,其中Mode和Symbol对应的索引是('', 'Mode')和('', 'Symbol')。

补充说明

如果需要直接修改原DataFrame,无需生成新变量,加上inplace=True参数即可:

df.sort_values(by=[('', 'Mode'), ('', 'Symbol')], ascending=[False, True], inplace=True)

内容的提问来源于stack exchange,提问作者M J

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 20:25:17