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

如何对DataFrame按一列降序、同值时另一列升序排序?

解决方案

你只需要在sort_values方法中指定多个排序字段,并为每个字段设置对应的排序方向即可:

br_df = br_imgfeatures_df.mean().reset_index(name='value').sort_values(
    by=['value', 'index'],  # 先按*value*列排序,再按类别列排序(这里类别列是reset_index后的默认列名*index*)
    ascending=[False, True]  # *value*列降序,类别列升序
)

关键说明:

  • 设置排序优先级:通过by=['value', 'index']指定先依据value列排序,当value值相同时,再按类别列(原索引转换来的index列)排序
  • 指定排序方向:ascending=[False, True]对应每个字段的排序规则,value列降序,类别列升序,这样首字母靠前的Flowers会排在Palm trees上方
  • 自定义列名:如果你的类别列不是默认的index,只需把by列表里的第二个字段替换成实际列名即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 21:40:45