Numpy:快速找到第一个价值索引

2022-01-20 00:00:00 python numpy find

问题描述

如何在 Numpy 数组中找到第一次出现的数字的索引?速度对我来说很重要.我对以下答案不感兴趣,因为它们会扫描整个数组并且在发现第一次出现时不会停止:

How can I find the index of the first occurrence of a number in a Numpy array? Speed is important to me. I am not interested in the following answers because they scan the whole array and don't stop when they find the first occurrence:

itemindex = numpy.where(array==item)[0][0]
nonzero(array == item)[0][0]

注意 1:该问题的答案似乎都不相关 是否有一个 Numpy 函数可以返回数组中某物的第一个索引?

Note 1: none of the answers from that question seem relevant Is there a Numpy function to return the first index of something in an array?

注意 2:使用 C 编译的方法优于 Python 循环.

Note 2: using a C-compiled method is preferred to a Python loop.


解决方案

有一个针对 Numpy 2.0.0 计划的功能请求:https://github.com/numpy/numpy/issues/2269

There is a feature request for this scheduled for Numpy 2.0.0: https://github.com/numpy/numpy/issues/2269

相关文章