【问题标题】:Label encoder is not converting str to intLabelencoder 没有将字符串转换为 int
【发布时间】:2020-03-04 18:13:15
【问题描述】:
col = ['date','age','race', 'sex','procedure1', 'procedure2', 'procedure3', 'a_diag', 'p_diag','s_diag1','s_diag2', 's_diag3', 's_diag4', 's_diag5']

from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
for i in col:
    df[i] = le.fit_transform(df[i].astype('object'))

对于上面的代码,我得到以下错误:

'<' not supported between instances of 'str' and 'int'

【问题讨论】:

标签: python-3.x scikit-learn data-science


【解决方案1】:

我建议你运行:

df.dtypes

首先,要检查哪些列已经是数字列,输出应如下所示:

date object
age int32

我会从您的循环中排除所有数字列。然后把循环代码改成:

 df[i] = le.fit_transform(df[i].astype('str'))

如果仍有错误,请查看:TypeError: '<=' not supported between instances of 'str' and 'int'

【讨论】:

    猜你喜欢
    • 2019-09-24
    • 2011-10-02
    • 2011-03-06
    • 1970-01-01
    • 2018-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多