Machine learning sklearn-ValueError:无法将字符串转换为浮点:';是';
我有一个数据集,其中包含以下分类数据。 当使用sklearn执行一次热编码时,我得到一个错误Machine learning sklearn-ValueError:无法将字符串转换为浮点:';是';,machine-learning,scikit-learn,Machine Learning,Scikit Learn,我有一个数据集,其中包含以下分类数据。 当使用sklearn执行一次热编码时,我得到一个错误 def ohe_encode(train, test, index): Onehot = OneHotEncoder(categorical_features='all', handle_unknown='error') x_train_1 = train x_test_1 = test colname = df.columns[index] Onehot.fit
def ohe_encode(train, test, index):
Onehot = OneHotEncoder(categorical_features='all', handle_unknown='error')
x_train_1 = train
x_test_1 = test
colname = df.columns[index]
Onehot.fit(train[colname].astype(str))
x_trans = Onehot.transform(train[columnns].astype(str))
new_features = Onehot.transform(test[colname].astype(str))
return (x_transform, new_features)
屏幕显示出现错误
ValueError: could not convert string to float: 'yes'
无法获取错误原因
提前感谢,摘自(我的重点):
使用one-of-K方案对分类的整数特征进行编码
此转换器的输入应为整数矩阵,表示
分类(离散)特征所采用的值
但是,您需要输入原始的分类值,例如«是»和«否»等字符串。因此您得到了ValueError
您需要首先输入数据,这意味着您需要将字符串转换为分类数字(整数)。然后您可以进行一次热编码。请尝试提出更详细的标题(现在编辑)。