在Pandas中为每个级别排序多个索引的方式不同

时间:2018-06-18 19:29:10

标签: python pandas sorting dataframe multi-index

我有一个索引为3级的数据框。我需要按每个级别对索引进行排序,但方式不同。什么能实现这个目标?

将数据框(df)设为:

                     other columns
color shape    count              
red   circle   1                 x
      triangle 3                 x
               2                 x
blue  circle   4                 x
      triangle 2                 x

我想要一个新的df,其中color已排序ascendingshapedescendingcountascending }:

                     other columns
color shape       count              
blue  triangle    2                 x
      circle      4                 x
red   triangle    2                 x
                  3                 x
      circle      1                 x

1 个答案:

答案 0 :(得分:4)

ascending参数与布尔列表一起使用:

df.sort_index(ascending=[True, False, True])

输出:

                     other columns
color shape    count              
blue  triangle 2                 x
      circle   4                 x
red   triangle 2                 x
               3                 x
      circle   1                 x