如何最好地使用代码示例对功能进行热编码

How to hot encode features preferably with a code example

我有这样一个数据框
代码 |类型
0001 |一种
0001 |乙
0001 | C
0002 |一种
0003 |乙
.....

并需要将其转换为以下内容
代码 | TYPE_A | TYPE_B | TYPE_C
0001 | 1 | 1 | 1
0002 | 1 | 0 | 0
0003 | 0 | 1 | 0

提前致谢

您可以使用 pandas 中的 get_dummies 函数。虚拟变量只是热编码的另一种说法。

import pandas as pd
df = pd.DataFrame({'CODE': ['0001', '0001', '0001', '0002','0003'], 
                   'TYPE': ['A', 'B', 'C', 'A', 'B']})
pd.get_dummies(df, columns=['TYPE'])

columns 参数让您指定要进行单热编码的列。

这将给出:

   CODE  TYPE_A  TYPE_B  TYPE_C
0  0001       1       0       0
1  0001       0       1       0
2  0001       0       0       1
3  0002       1       0       0
4  0003       0       1       0