2 回答
TA贡献1829条经验 获得超4个赞
full应该是在数组中“复制”字符串的快速(错误)方式:
In [84]: np.full(4, 'label')
Out[84]: array(['label', 'label', 'label', 'label'], dtype='<U5')
In [85]: alist = []
In [86]: labels = ['one','two','three']
In [87]: for i in range(3):
...: temp=np.full(3,labels[i])
...: alist.append(temp)
...:
In [88]: alist
Out[88]:
[array(['one', 'one', 'one'], dtype='<U3'),
array(['two', 'two', 'two'], dtype='<U3'),
array(['three', 'three', 'three'], dtype='<U5')]
In [89]: np.array(alist)
Out[89]:
array([['one', 'one', 'one'],
['two', 'two', 'two'],
['three', 'three', 'three']], dtype='<U5')
或列表理解:
In [91]: np.array([np.full(3,l,'U7') for l in labels])
Out[91]:
array([['one', 'one', 'one'],
['two', 'two', 'two'],
['three', 'three', 'three']], dtype='<U7')
TA贡献1802条经验 获得超10个赞
更换
stackable = np.asarray([label for i in range(40)]).reshape((-1,1))
和
stackable = np.asarray([label]*40).reshape((-1,1))
在我的机器上获得 10-20% 的性能提升。可能还有更多可以做的事情,但是如果不了解更多关于data
和就很难说some_other_data
。
添加回答
举报