我有 NumPy N 维 bool 数组b
。
它由 转换为True
值的索引i = np.nonzero(b)
。
什么是最短的单线转换i
回b
.
当然,它可以多行完成:
b = np.zeros(b_shape, dtype = np.bool_)
b[i] = True
显然,单行可以通过;
-concatenation 行,或其他一些元组/lambda 魔术,或通过定义一个单独的函数来实现。
但我真正想要的是找到一些内置的 NumPy 函数,b = np.indices_to_bools(i, shape = b_shape)
或者找出几个内置函数的一些漂亮的叠加。因此,该解决方案可以作为更大复杂表达式的一部分嵌入。
此外,我希望解决方案与上述两行代码一样高效(CPU/RAM 方面)或几乎一样高效。不仅仅是任何低效的单线。