Sve*_*ugh 9 python sklearn-pandas feature-engineering
sklearn.LabelEncoder的文档以
这个转换器应该用于编码目标值,即 y,而不是输入 X。
为什么是这样?
我只发布了这个建议在实践中被忽略的一个例子,尽管似乎还有更多。 https://www.kaggle.com/matleonard/feature-generation包含
#(ks is the input data)
# Label encoding
cat_features = ['category', 'currency', 'country']
encoder = LabelEncoder()
encoded = ks[cat_features].apply(encoder.fit_transform)
Run Code Online (Sandbox Code Playgroud)
它改变输出值 y 并不是什么大事,因为它只是基于此重新学习(如果它是基于错误的回归)。
\n如果它改变了输入值 \xe2\x80\x9cX\xe2\x80\x9d 的权重,就会出现问题,从而无法做出正确的预测。
\n如果没有太多选项,例如编码为 int-s 的 2 个类别、2 个货币、2 个城市,您可以在 X 上执行此操作不会对游戏产生太大影响。
\n