2024-04-26 07:11:02 发布
网友
我有一个索引列表,比如[3,4,7,9]。创建二进制数组的最快方法是什么(在本例中为[0,0,0,1,1,0,0,1,0,1])。 谢谢
简单的列表理解就可以了:
indices = {3, 4, 7, 9} [i in indices for i in range(10)]
对于numpy:
l = [3,4,7,9] m = np.zeros(max(l)+1) m[l] = 1
>>> m array([0., 0., 0., 1., 1., 0., 0., 1., 0., 1.])
使用理解:
indices = {3,4,7,9} output = [int(i in indices) for i in range(max(indices)+1)]
简单的列表理解就可以了:
对于numpy:
使用理解:
相关问题 更多 >
编程相关推荐