pandas.DataFrame.reorder_levels#

DataFrame.reorder_levels(order, axis=0)[源代码]#

使用输入顺序重新排列索引级别。不能删除或重复级别。

Parameters:
order整数列表或字符串列表

表示新级别顺序的列表。可按数字(位置)引用级别,也可按键(标签)引用。

axis{0 或 ‘index’, 1 或 ‘columns’}, default 0

重新排序级别的位置。

Returns:
DataFrame

Examples

>>> data = {
...     "class": ["Mammals", "Mammals", "Reptiles"],
...     "diet": ["Omnivore", "Carnivore", "Carnivore"],
...     "species": ["Humans", "Dogs", "Snakes"],
... }
>>> df = pd.DataFrame(data, columns=["class", "diet", "species"])
>>> df = df.set_index(["class", "diet"])
>>> df
                                  species
class      diet
Mammals    Omnivore                Humans
           Carnivore                 Dogs
Reptiles   Carnivore               Snakes

让我们重新排列索引的级别:

>>> df.reorder_levels(["diet", "class"])
                                  species
diet      class
Omnivore  Mammals                  Humans
Carnivore Mammals                    Dogs
          Reptiles                 Snakes