gpt4 book ai didi

python - 获取数组中零和非零元素的索引

转载 作者:太空狗 更新时间:2023-10-29 22:19:47 31 4
gpt4 key购买 nike

我需要找到数组的零元素和非零元素的索引。

换句话说,我想从 numpy.nonzero() 中找到互补索引。

我知道的方法如下:

indices_zero = numpy.nonzero(array == 0)
indices_nonzero = numpy.nonzero(array != 0)

然而,这意味着搜索数组两次,这对于大型数组来说效率不高。是否有使用 numpy 执行此操作的有效方法?

最佳答案

假设你已经有了 numpy.arange(len(array)) 的使用范围,只需获取并存储逻辑索引:

bindices_zero = (array == 0)

然后当你真正需要整数索引时你可以做

indices_zero = numpy.arange(len(array))[bindices_zero]

indices_nonzero = numpy.arange(len(array))[~bindices_zero]

关于python - 获取数组中零和非零元素的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13598879/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com