Python Pandas CategoricalIndex – 重新排序类别
要重新排序类别,请在Pandas中使用CategoricalIndex reorder_categories() 方法。 首先,导入所需的库-
import pandas as pd
CategoricalIndex只能采用有限的、通常是固定的若干可能值。使用“categories”参数设置分类的类别。使用“ordered”参数将分类视为有序-
catIndex = pd.CategoricalIndex(["p", "q", "r", "s","p", "q", "r", "s"], ordered=True, categories=["p", "q", "r", "s"])
显示CategoricalIndex-
print("CategoricalIndex...\n",catIndex)
获取类别-
print("\nDisplayingCategories from CategoricalIndex...\n",catIndex.categories)
使用reorder_categories()重新排序类别。 将新顺序的类别设置为参数-
print("\nCategoricalIndex after reordering categories...\n",catIndex.reorder_categories(["r", "s", "q", "p"]))
更多Pandas文章,请阅读:Pandas教程
示例
以下是代码-
import pandas as pd
#CategoricalIndex只能采用有限的、通常是固定的若干可能值(类别)。
#使用“categories”参数设置分类的类别
#使用“ordered”参数将分类视为有序
catIndex = pd.CategoricalIndex(["p", "q", "r", "s","p", "q", "r", "s"], ordered=True, categories=["p", "q", "r", "s"])
#显示CategoricalIndex
print("CategoricalIndex...\n",catIndex)
#获取类别
print("\nDisplayingCategories from CategoricalIndex...\n",catIndex.categories)
#使用reorder_categories()重新排序类别。 将新顺序的类别设置为参数
print("\nCategoricalIndex after reordering categories...\n",catIndex.reorder_categories(["r", "s", "q", "p"]))
输出
这将产生以下输出-
CategoricalIndex...
CategoricalIndex(['p', 'q', 'r', 's', 'p', 'q', 'r', 's'], categories=['p', 'q', 'r', 's'], ordered=True, dtype='category')
DisplayingCategories from CategoricalIndex...
Index(['p', 'q', 'r', 's'], dtype='object')
CategoricalIndex after reordering categories...
CategoricalIndex(['p', 'q', 'r', 's', 'p', 'q', 'r', 's'], categories=['r', 's', 'q', 'p'], ordered=True, dtype='category')