Python 如何将onehotencoding和BagoWord混合使用

Python 如何将onehotencoding和BagoWord混合使用,python,pandas,numpy,Python,Pandas,Numpy,我正在寻找一种模型,一种类似于onehotencoding的模式,它可以在一个向量中混合相同类别的列 拥有数据[5,8,1,3] 它将给我:[0,1,0,1,0,1,0,0,1,0,0,0] 将任意大小设置为12 我查看了巴格沃德,但没有找到如何独立于输入数据设置向量大小 如果有人能给我一些线索,我会找到的。注意,在处理文本时会使用模型。对于这个更简单的任务,您只需使用并指定一个minlength: l = [5,8,1,3] np.bincount(l, minlength=12) #

我正在寻找一种模型,一种类似于onehotencoding的模式,它可以在一个向量中混合相同类别的列

  • 拥有数据
    [5,8,1,3]
  • 它将给我:
    [0,1,0,1,0,1,0,0,1,0,0,0]
将任意大小设置为12

我查看了巴格沃德,但没有找到如何独立于输入数据设置向量大小

如果有人能给我一些线索,我会找到的。

注意,在处理
文本时会使用模型。对于这个更简单的任务,您只需使用并指定一个
minlength

l = [5,8,1,3]

np.bincount(l, minlength=12)
# array([0., 1., 0., 1., 0., 1., 0., 0., 1., 0., 0., 0.])

您可以使用
np.zero
并将值
1
设置为
数据列表中的索引:

z = np.zeros(12)
data = [5,8,1,3]
z[data] = 1
print(z)
输出:

[0. 1. 0. 1. 0. 1. 0. 0. 1. 0. 0. 0.]