使用numpy生成one-hot编码

借助numpy库的eye函数生成对角矩阵。通过索引list获取one-hot编码

import numpy as np
index_list = [1,0,3]
max_index = np.max(index_list) + 1
np.eye(max_index)[index_list) # 得到深度为4的one-hot编码

这里的one-hot编码方式根据索引值进行编码,当索引值非连续且差距很大,比如index_list=[1,0,11111]时,这种上述编码长度为11112,非常不合理。
也可以借助sklearn库的one-hot编码函数进行编码。

你可能感兴趣的:(python)