sklearn里的LabelEncoder什么用?

  统计/机器学习 监督式学习 Python    浏览次数:16533        分享
0

sklearn里的LabelEncoder什么用?很多代码里都有这个。

但是没搞清楚什么作用。已经是label了,为什么还要再encoder?


 

yukio   2018-02-07 09:16



   3个回答 
6

label encoder就是把lable编码的。比如label是一串地名,是无法直接输入到sklearn的分类模型里作为训练标签的,所以需要先把地名转成数字。然后LabelEncoder就是帮你做这件事的。

>>> from sklearn import preprocessing
>>> le = preprocessing.LabelEncoder()
>>> le.fit(["paris", "paris", "tokyo", "amsterdam"]);
>>> le.transform(["tokyo", "tokyo", "paris", "amsterdam", "amsterdam"]) 
array([2, 2, 1, 0, 0])


SofaSofa数据科学社区DS面试题库 DS面经

山中人   2018-02-25 22:04

2

把一些没什么上下文联系的文本转换成能作为input的数字,不然都没把文本输入到模型里去


SofaSofa数据科学社区DS面试题库 DS面经

mosthated   2018-02-25 03:02

0

再做特征工程时,我们需要处理已有特征,对于分类特征通常有两种处理方案:

  • 自然数编码

使用sklearn中的LabelEncoder方法,转换为数值型特征

  • 独热编码(one-hot encoding)

生成一个(n_examples * n_classes)大小的0~1矩阵,每个样本仅对应一个label

可以使用pandas中的get_dummies实现

SofaSofa数据科学社区DS面试题库 DS面经

betten   2018-02-27 16:09



  相关讨论

sklearn SGDClassifier的partial_fit是什么意思?

CatBoostClassifier里的rsm参量是什么意思?

sklearn.linear_model.SGDClassifier能做小批量学习(mini-batch)吗?

怎么获取sklearn.linear_model.SGDRegressor的回归系数、截距?

sklearn predict的默认阈值

请问在sklearn怎么在已有的模型的基础上训练新的数据?

sklearn分类模型中预测结果怎么调整概率的阈值

sklearn中的Randomizedlogisticregression是什么算法?和SGDClassifier一样吗?

sklearn中的predict_proba方法的返回值的意义

sklearn.linear_model.SGDClassifier中的参数n_iter设置问题

  随便看看

机器学习中的奥卡姆剃刀原理是什么意思

怎么给plt.subplot加一个主标题?

柯西分布没有数学期望

统计学中的自变量和因变量分别是什么意思?

hyperparameter与parameter的区别?