我有一个移动价格分类数据集,其中有20个功能和一个名为price_range的目标变量。我需要将移动价格分类为低,中,高,非常高。我已经将一键编码应用于目标变量。之后,我将数据拆分为trainX,testX,trainy,testy。因此,trainX和trainy的形状分别为(1600,20)和(1600,4)。现在,当我尝试将trainX调整为logisticRegresion时,也就是-> lr.fit(trainX,trainy)时,我得到一个错误,它说:输入错误(1600,4)所以,我明白我必须给予训练值形状(1600,1),但是通过一种热编码,按照一种热编码的概念,对于每个单独的price_range,我都有4列的数组。
所以现在我完全感到困惑,人们在实践中如何使用一种热编码作为目标变量?请帮帮我。
要训练模型,应仅对特征应用OneHotEncoder以获得X。并应用LabelEncoder()转换y。
from sklearn import preprocessing
le=preprocessing.LabelEncoder()
le.fit_transform(['a','b','a'])
并获得:
output: array([0, 1, 0])
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句