📜  在 NumPy 数组中搜索(1)

📅  最后修改于: 2023-12-03 14:51:03.191000             🧑  作者: Mango

在 NumPy 数组中搜索

NumPy 是一种Python库,用于处理与科学计算和数学有关的问题。NumPy 中包含了许多有用的函数,以便我们轻松地搜索NumPy数组中的元素。在此文中,我们将介绍如何在 NumPy 数组中搜索元素。

NumPy 的搜索函数

NumPy 中包含了许多搜索函数,包括:

  • numpy.where - 返回一个数组中符合条件的元素的索引。
  • numpy.argwhere - 类似于 numpy.where,但是返回的是一个二维数组。
  • numpy.searchsorted - 在一个已排序的数组中,找出一个元素插入数组后依然保持有序的位置索引。
  • numpy.extract - 返回一个数组中满足某个条件的元素。
  • numpy.nonzero - 返回一个数组中非零元素的索引。
例子

下面是几个使用 NumPy 搜索函数的例子。

numpy.where
import numpy as np

arr = np.array([1, 2, 3, 4, 5])
x = 3

indices = np.where(arr == x)

print(indices)

输出:

(array([2]),)

这个代码片段中,我们在 NumPy 数组中搜索元素 3 的位置。numpy.where 返回一个元组,其中仅包含这个元素的下标。在这个例子中,元素 3 在数组中的下标是 2。

numpy.extract
import numpy as np

arr = np.array([1, 2, 3, 4, 5])
condition = arr > 2

new_arr = np.extract(condition, arr)

print(new_arr)

输出:

[3 4 5]

这个代码片段中,我们在 NumPy 数组中搜索值大于 2 的元素。使用 numpy.extract 函数,我们可以提取满足条件的元素。在这个例子中,我们提取了数组中的 3、4 和 5。

结论

使用 NumPy,我们可以轻松地搜索和提取 NumPy 数组中的元素。NumPy 中的搜索函数非常强大,并且可以适用于各种不同的情况。如果您需要在 NumPy 数组中搜索或提取元素,请务必考虑使用这些函数。