gpt4 book ai didi

python - 在one-hot编码期间/之后,是否可以使用另一列的值而不是二进制标志?

转载 作者:行者123 更新时间:2023-11-30 09:42:23 24 4
gpt4 key购买 nike

我想知道是否有任何方法可以在单热编码后将我的分类列转换为来自另一列的值,而不是现有类别之一中的二进制“1”?

我的数据框如下所示:

ID  Location    Amount  Quantity
1 TEXAS 12342 1
2 CALIFORNIA 23423 4

在标签和one-hot编码之后,我得到这个:

ID  Location_TEXAS  Location_CALIFORNIA    Amount   Quantity
1 1 0 12342 1
2 0 1 23423 4

是否可以在编码列中包含金额而不是二进制值?

期望的结果:

ID  Location_TEXAS  Location_CALIFORNIA    Amount   Quantity
1 12342 0 12342 1
2 0 23423 23423 4

之后,我可以完全删除“金额”列。

这是我用于标签编码和one-hot编码的代码:

 from sklearn.preprocessing import LabelEncoder, OneHotEncoder 
labelencoder_X = LabelEncoder()
X[:, 0] = labelencoder_X.fit_transform(X[:, 0])
onehotencoder = OneHotEncoder(categorical_features = [0])
X = onehotencoder.fit_transform(X).toarray()

请告诉我这是否可行。任何帮助将不胜感激。

最佳答案

这会破坏对状态变量进行一次性编码的目的。 OHE 的想法是,对于每个观察,只有一个编码特征是“热”的。

此外,这将使您的状态和金额特征线性不可分离,这​​将不允许模型独立于位置权重来改变金额权重。如果没有非常具体的理由这样做,我会说这不是一个好主意。

关于python - 在one-hot编码期间/之后,是否可以使用另一列的值而不是二进制标志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57173033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com