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

如何在Pandas数据透视表中按指定顺序排序列

解决Pandas透视表列匹配行指定顺序的问题

快速解决方案

你的行索引已经是目标顺序(Orange、Mango、Apple、Banana),直接用行索引重新排列列就能实现需求:

# 创建透视表后,对齐列与行的顺序
pivot = final_df.groupby(['Fruit A','Fruit B'], sort=False)['Similarity Score'].sum().unstack('Fruit B')
pivot = pivot[pivot.index]

原代码未生效的原因

你使用的groupby(sort=False)仅能保证分组顺序和数据中Fruit A、Fruit B的出现顺序一致,但unstack()方法默认会将展开的列按字母顺序排序,所以最终列顺序还是变成了Apple、Orange、Mango、Banana。

手动指定顺序的替代方案

如果提前明确目标列顺序,也可以直接用列表指定重排:

target_order = ['Orange', 'Mango', 'Apple', 'Banana']
pivot = pivot[target_order]

内容的提问来源于stack exchange,提问作者Jasmine Koh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 17:25:58