【发布时间】:2019-03-09 05:35:27
【问题描述】:
我有一个数据框,我想直接在其上使用 LabelEncoder。
数据帧:
df.select_dtypes('object').iloc[:,1:]
Gender Married x_y x_z
0 Male No 0 No
1 Male Yes 1 No
2 Male Yes 2 Yes
3 Male Yes 3+ No
4 Male No 1 No
我试过这些:
le = LabelEncoder()
df.select_dtypes('object').iloc[:,1:].apply(le.fit_transform, axis=1)
TypeError: ("'
df.select_dtypes('object').iloc[:,1:].apply(LabelEncoder.fit_transform)
TypeError: ("fit_transform() 缺少 1 个必需的位置参数: 'y'", '发生在索引性别')
关于如何使用它的任何帮助。
【问题讨论】:
-
对于初学者来说,
LabelEncoder()用于单个列、您的目标或类别标签。你在找OneHotEncoder()吗? -
@G.Anderson 我在上面看到过很多帖子,所以你可以通过
apply函数使用它。 -
我想直接根据类别将类别标签转换为
o或1。 -
df.apply(LabelEncoder().fit_transform),其中df是包含您要转换的所有列的数据框。
标签: python scikit-learn sklearn-pandas