python中category是什么类型_注意:Python代码bug-category数据类型的转换

python中category是什么类型_注意:Python代码bug-category数据类型的转换
文章图片

《Python数据可视化之美》已经出售,书籍配套的代码也可以在Github-Easy_Shu上下载。但是最近有读者反映代码运行有bug,今天我修正啦,准确的叫法应该是更新。因为这个bug是因为pandas包更新导致原category数据类型的转换方法失效。但是这个数据类型的转换在很多图表代码中都有使用,极为重要,特此郑重声明,希望读者尤为注意。
python中category是什么类型_注意:Python代码bug-category数据类型的转换
文章图片

现在以《Python数据可视化之美》第20页代码为例。一个分类数据不仅包括分类变量本身,还可能包括变量不同的类别(即使它们在数据中不出现)。分类函数pd.Categorical()用下面的选项创建一个分类数据。对于字符型列表,分类数据的类别默认依字母顺序创建:[Fair,Good, Ideal, Premium, Very Good]。
对于已经创建的分类数据或者数据框,可以使用*.astype()函数指定类别选项来覆盖默认排序,从而将分类数据的类别更改为[Good, Fair, Very Good, Ideal, Premium]。其原代码如下:import pandas as pdCut=pd.Series(["Fair","Good","Very Good","Premium","Ideal"])Cut_Facor2=Cut.astype("category",categories=["Good","Fair","Very Good","Ideal","Premium"],ordered=True)
但是现在的运行出错,其bug显示如下,astype()已经不存在这个categories的参数:
python中category是什么类型_注意:Python代码bug-category数据类型的转换
文章图片

由于pandas版本(1.0.3)的更新, 现在要想使用astype()来转换类数据的类别,原类别更改方法需要使用pandas.api.types. CategoricalDtype来定义categories,其代码具体如下:import pandas as pdfrom pandas.api.types import CategoricalDtypeCut=pd.Series(["Fair","Good","Very Good","Premium","Ideal"])Cut_Facor2= Cut.astype(CategoricalDtype(categories=["Good","Fair","Very Good","Ideal","Premium"],ordered=True))
我把两段代码放到一起,对比显示如下。读者在书中代码遇到category类型数据的转换,都需要替换成现在的代码形式,方能运行。
python中category是什么类型_注意:Python代码bug-category数据类型的转换
文章图片

参考:
[1] https://pandas.pydata.org/pandas-docs/version/0.22.0/categorical.html
[2] https://pandas.pydata.org/pandas-docs/stable/user_guide/categorical.html
欢迎读者来信,再次感谢诸位!
python中category是什么类型_注意:Python代码bug-category数据类型的转换
文章图片
如需联系EasyShu团队
请加微信:EasyCharts
微信公众号【EasyShu】博文代码集合地址
https://github.com/Easy-Shu/EasyShu-WeChat数据可视化之美系列书籍python中category是什么类型_注意:Python代码bug-category数据类型的转换
文章图片
Python数据可视化之美-配套源代码下载地址Github
https://github.com/Easy-Shu/Beautiful-Visualization-with-python
R语言数据可视化之美-增强版配套源代码下载地址Github
https://github.com/Easy-Shu/Beautiful-Visualization-with-R
【python中category是什么类型_注意:Python代码bug-category数据类型的转换】python中category是什么类型_注意:Python代码bug-category数据类型的转换
文章图片

    推荐阅读