LableEncoder()错误(sklearn)

问题描述 投票:-1回答:2

如何在python 3.0(Anaconda)中处理LableEncoder()?当我运行我的数据时出现像'<' not supported between instances of 'str' and 'float'这样的错误。

以下是使用的代码:

from sklearn.preprocessing import LabelEncoder
var_mod = ['Gender','Married','Dependents','Education','Self_Employed',
           'Property_Area','Loan_Status']
le = LabelEncoder()
for i in var_mod:
    df[i] = le.fit_transform(df[i])
df.dtypes
python python-3.x dataframe scikit-learn
2个回答
0
投票

让我们尝试下面的代码:

from sklearn import preprocessing
le =preprocessing.LabelEncoder()
le.fit_transform(['Gender','Married','Dependents','Education','Self_Employed', 'Property_Area','Loan_Status'])
keys = le.classes_
values = le.transform(le.classes_)
df = dict(zip(keys, values))
print(df)

0
投票

请发布错误的完整堆栈跟踪以及发生错误的i的值。我怀疑在那个i专栏中,你有不同类型的价值观。

如果您可以将数据转换为所有字符串,请尝试以下操作:

for i in var_mod:
    df[i] = le.fit_transform(df[i].astype(str))
© www.soinside.com 2019 - 2024. All rights reserved.