dss*_*dss 6 encoding scikit-learn one-hot-encoding
这是我的问题,希望有人能帮助我解决。
解释一下,我的数据集中有10多个类别列,每个列都有200-300个类别。我想将它们转换为二进制值。为此,我使用了第一个标签编码器将字符串类别转换为数字。标签编码器代码和输出如下所示。
在使用标签编码器之后,我再次使用了一个来自scikit-learn的Hot Encoder,它可以正常工作。但是问题是,我需要在一个热编码器之后添加列名。例如,A列在编码前具有分类值。A = [1,2,3,4,..]
编码后应该像这样
A-1,A-2,A-3
任何人都知道一种热编码后如何将列名分配给(旧列名-值名称或数字)。这是我的一种热门编码,它是输出的;
我需要带有名称的列,因为我训练了ANN,但是每次出现数据时,我都无法一次又一次地转换所有过去的数据。因此,我想每次仅添加新的。还是谢谢你
正如 @Vivek Kumar 提到的,您可以使用 pandas 函数get_dummies()而不是 OneHotEncoder。我想保留初始 DataFrame 的一个版本,因此我执行了以下操作;
import pandas as pd
DataFrame2 = pd.get_dummies(DataFrame)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2038 次 |
| 最近记录: |