分类变量如何设置变量值的显示顺序

在做数据分析的时候,有时候分类变量值默认的排序不是我们想要的,需要调整显示顺序,pandas可以通过pd.Categorical来设置分类变量的显示顺序。

例如,对于数据分析教程常用的diamonds数据集,color等级是从J, I, H, G, F, E, D逐渐上升,如果要考察color等级和价格的关系,自然是希望color按照J, I, H, G, F, E, D顺序显示,但数据默认会按照字母(变量值)在数据中出现的顺序或者一般排序的顺序。

例如:直接绘图,color的显示顺序为变量值在数据中出现的顺序

import seaborn as sns 
sns.barplot(x = "color", y = "price",data = diamonds)

 

 

现在通过pd.Categorical()函数重新设置color列的显示顺序

color_cats = ['J', 'I', 'H', 'G', 'F', 'E', 'D']
diamonds['color'] = pd.Categorical(diamonds['color'], categories=color_cats, ordered=True)

设置完毕后,显示顺序就按照等级顺序了。

发布了18 篇原创文章 · 获赞 12 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章