pandas的Categorical方法

Posted demo-deng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pandas的Categorical方法相关的知识,希望对你有一定的参考价值。

  对于数据样本的标签,如果我们事先不知道这个样本有多少类别,那么可以对数据集的类别列进行统计,这时我们用pandas的Categorical方法就非常快的实现。

1.说明: 

  你的数据最好是一个series,之后,pd.Categorical(series),得到分类的对象,使用categories或者codes进行查看

2.操作:

pd.Categorical( list ).codes 这样就可以直接得到原始数据的对应的序号列表,通过这样的处理可以将类别信息转化成数值信息 ,这样就可以应用到模型中去了 

代码:

  

 1 import tensorflow
 2 import lightgbm as lgb
 3 import pandas as pd
 4 
 5 
 6 class Deng(object):
 7     def __init__(self):
 8         pass
 9 
10     def main(self):
11         temp = [a, a, b, c, c]
12         st = pd.Categorical(temp)
13         print(st)
14         # [a, a, b, c, c]
15         # Categories(3, object): [a, b, c]
16 
17         # 遍历temp指出temp中每个字符所属类别的位置索引
18         st2 = st.codes
19         print(st2)
20         # [0 0 1 2 2]
21 
22 
23 if __name__ == __main__:
24     obj = Deng()
25     obj.main()

 

  

以上是关于pandas的Categorical方法的主要内容,如果未能解决你的问题,请参考以下文章

pandas使用Categorical函数将object数据数据列转化为categorical数据列并基于categorical的因子(分类)水平排序dataframe

One Hot Encoding 和 pandas.categorical.code 有啥区别

Pandas的Categorical Data类型

使用Categorical_endcoder包对标称变量进行个性化编码

有啥方法可以在 Python pandas 中获取标签编码器的映射?

pandas GroupBy上的方法apply:一般性的“拆分-应用-合并”