CDA持证人阿涛哥

2021-03-30   阅读量: 663

机器学习 大数据 数据分析师

在对数据进行预处理时,应该怎样处理类别型特征?

扫码加入数据分析学习群
在对数据进行预处理时,应该怎样处理类别型特征?

1, 序号编码
序号编码通常用于处理类别间具有大小关系的数据 。 例如成绩 ,可
以分为低、中、高三挡 ,并且存在“高 > 中 > 低”的排序关系 。 序号
编码会按照大小关系对类别型特征赋予一个数值 ID ,例如高表示为 3 、
中表示为 2 、低表示为 1 ,转换后依然保留了大小关系 。
2,独热编码
独热编码通常用于处理类别间不具有大小关系的特征 。 例如血型,
一共有 4 个取值( A 型血、 B 型血、 AB 型血 、 o型血) ,独热编码会

把血型变成一个 4 维稀疏向 量, A 型血表示为( 1, 0, 0, 0 ) , B 型血

表示为( 0, 1 , 0, 0 ) , AB 型表示为( 0, 0,1, 0 ) , o 型血表示为( 0, 0,

0, 1 ) 。 对于类别取值较多的情况下使用独热编码需要注意以下问题。
(1)使用稀疏向量来节省空间 。 在独热编码下, 特征向量只有某
一维取值为 1 ,其他位置取值均为 0 。 因此可以利用向量的稀疏表示有
效地节省空间,并且目前大部分的算法均接受稀疏向量形式的输入 。
( 2 )配合特征选择来降低维度 。 高维度特征会带来几方面的问题 。
一是在 K 近邻算法中,高维空间下两点之间的距离很难得到高效的衡量;
二是在逻辑回归模型中,参数的数量会随着维度的增高而增加,容易引
起过拟合问题;三是通常只有部分维度是对分类、预测有帮助,因此可
以考虑配合特征选择来降低维度 。
3, 二进制编码
二进制编码主要分为两步 , 先用序号编码给每个类别赋予一个类别
ID ,然后将类别 ID 对应的二进制编码作为结果 。 以 A 、 B 、 AB 、 o
血型为例。 A 型血的 ID 为 1 ,二进制表
示为 001; B 型血的 ID 为 2 ,二进制表示为 010,以此类推可以得到
AB 型血 和 o型血的二进制表示 。 可以看出,二进制编码本质上是利用
二进制对 ID 进行哈希映射,最终得到 0/1 特征向量 ,且维数少于独热
编码,节省了存储空间。
添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
0.0157 1 0 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子