首先强调一下,本篇博客是我实验得出来的结论,要是错了,可以在评论区指正,嘻嘻
接下来我会介绍以下三个内容
- 为什么要用onehot
- 怎么用
为什么要用onehot:
假设你有一个这样的数据集,格式是csv或者arff格式:
体重 | 身高 | ... | class |
胖 | 1 5 0 | ... | 不好看 |
瘦 | 1 6 0 | ... | 还可以 |
有点胖 | 1 8 0 | ... | 帅 |
有点瘦 | 1 5 0 | ... | 还可以 |
你现在需要对这个数据构建一个分类器,挖掘一些有用的信息,此时你想到了sklearn(真是个错误的决定),你会发现如果你把这个数据集直接当成数据矩阵numpy,输入sklearn中的分类器中,编译器会提示你,类型错误,无法把string(或者btype)类型转成float....
经过我查阅多方资料,我才明白,原来sklearn中的数据默认得是全数值类型。一个非常好