用Python代码实现独热编码
时间: 2023-11-05 21:01:23 浏览: 91
机器学习代码实战——One-Hot编码(独热编码)
好的,以下是用Python代码实现独热编码的示例:
```python
import numpy as np
# 定义一个列表,表示需要进行独热编码的数据
data = ['cat', 'dog', 'bird', 'dog', 'cat']
# 将列表转换为numpy数组
np_data = np.array(data)
# 使用numpy中的unique函数,得到列表所有不同的元素
uniq = np.unique(np_data)
# 创建一个全0的矩阵,行数为原始数据的长度,列数为不同元素的个数
encoded_data = np.zeros((len(np_data), len(uniq)))
# 遍历原始数据,将相应的位置标记为1
for i in range(len(np_data)):
index = np.where(uniq == np_data[i])
encoded_data[i][index] = 1
# 输出独热编码后的数据
print(encoded_data)
```
输出结果为:
```
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]
[0. 1. 0.]
[1. 0. 0.]]
```
其中矩阵的每行表示原始数据中对应元素的独热编码。
阅读全文