其他分享
首页 > 其他分享> > 成功解决TypeError: Encoders require their input to be uniformly strings or numbers.

成功解决TypeError: Encoders require their input to be uniformly strings or numbers.

作者:互联网

成功解决TypeError: Encoders require their input to be uniformly strings or numbers. Got [‘float‘, ‘int‘,‘str’]

今天在给数据编码的时候,在将离散特征转换为整数编码时,出现了报错如下:
​​报错信息
后来发现可以先将要编码的离散变量全部转换成字符型的,例如作出如下修改:

from sklearn.preprocessing import LabelEncoder
clean_loan_of[attri_cols] = clean_loan_of[attri_cols].astype('str') 
dfobject = clean_loan_df[attri_cols].select_dtypes(['object'])
def labelencode(columnlabel):
    clean_loan_df[columnlabel] = LabelEncoder().fit_transform(clean_loan_df[columnlabel])
for i in range(0, len(dfobject.columns)):
    labelencode(dfobject.columns[i])

就可以完成转换啦!

标签:Encoders,df,require,uniformly,cols,attri,clean,columnlabel,loan
来源: https://blog.csdn.net/qq_40724344/article/details/117885009