LabelEncoder 和 LabelBinarizer 的区别? [复制]
Posted
技术标签:
【中文标题】LabelEncoder 和 LabelBinarizer 的区别? [复制]【英文标题】:Difference between LabelEncoder and LabelBinarizer? [duplicate] 【发布时间】:2019-05-26 03:55:30 【问题描述】:from sklearn.preprocessing import LabelBinarizer
对
from sklearn.preprocessing import LabelEncoder
LabelEncoder
和LabelBinarizer
之间有什么区别,什么时候使用?
提前致谢。
【问题讨论】:
https://***.com/questions/50473381/scikit-learns-labelbinarizer-vs-onehotencoder 【参考方案1】:labelEncoder
不会为您的X
中的每个类别创建虚拟变量,而LabelBinarizer
会这样做。这是文档中的一个示例。
from sklearn.preprocessing import LabelBinarizer,LabelEncoder
data1 = [1, 2, 2, 6]
lb = LabelBinarizer()
le = LabelEncoder()
print('LabelBinarizer output \n',lb.fit_transform(data1))
#LabelBinarizer output
[[1 0 0]
[0 1 0]
[0 1 0]
[0 0 1]]
print('LabelEncoder output \n',le.fit_transform(data1))
#LabelEncoder output
[0 1 1 2]
因此,如果您只想将类别编码为 0、1、2、3 等,请使用 labelEncoder。如果要为每个类别创建虚拟变量,请使用 labeBinarizer。
【讨论】:
以上是关于LabelEncoder 和 LabelBinarizer 的区别? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
labelencoder 和 OneHotEncoder 的值错误