如何检查 NumPy 数组中是否存在指定值?

numpypythonserver side programmingprogramming更新于 2024/11/23 23:08:17

我们在 Python 语言中有不同的模块和函数可用于检查给定的 Numpy 数组中是否存在指定值。

Numpy 缩写为 Numerical Python,它是一个用于执行数学、统计和科学计算的 Python 库。numpy 数组的结果以数组格式返回。数组可以创建为一维、二维等,最多 32 维。

Numpy 库提供了许多模块和函数,可帮助我们执行科学计算和数学计算。

让我们逐一查看检查 numpy 数组中是否存在指定值的方法。

使用"in"关键字

以下示例检查 Numpy 数组中是否存在指定值。我们有关键字in,用于检查特定元素是否存在于定义的数据结构中。

import numpy as np
arr = np.array([10,30,2,40.3,56,456,32,4])
print("原始数组:",arr)
if 4 in arr:
    print("元素存在于数组中。")
else:
    print("元素不存在于数组中")

输出

当我们运行上述代码时,将生成以下输出,它表明元素存在于数组中。

原始数组:[ 10. 30. 2. 40.3 56. 456. 32. 4. ]
元素存在于数组中。

示例

这是另一个示例,用于检查给定值是否存在于定义的数组中。

import numpy as np
arr = np.array([10,30,2,40.3,56,4,56,3,2,4])
print("原始数组:",arr)
if 4 or 56 in arr:
    print("元素存在于数组中。")
else:
    print("元素不存在于数组中")

输出

以下是 in 关键字的输出,用于检查给定值是否存在于数组中。

原始数组:[10. 30. 2. 40.3 56. 4. 56. 3. 2. 4. ]
元素存在于数组中。

使用 np.isin() 函数

Numpy 库提供了一个函数,即 isin(),用于检查给定值是否存在于定义的数组中。要检查的值也应采用数组格式。输出结果将以布尔值 True 或 False 的形式返回。

示例

在本例中,我们将要检查的数组和值传递给 numpy 库的 isin() 函数,然后输出结果将以布尔值 True 或 False 的形式返回。

import numpy as np
arr = np.array([[10,30,2,40.3],[56,4,56,3]])
print("原始数组:",arr)
values = np.array([10,30,2,40.3])
output = np.isin(arr, values)
print(output)

输出

以下是返回布尔值的 isin() 函数的输出。

原始数组:[[10. 30. 2. 40.3]
[56. 4. 56. 3. ]]
[[ True True True True]
[False False False False]]

示例

以下示例显示如何检查指定的值是否存在于定义的数组中。

import numpy as np
arr = np.array([[[10,30],[2,40.3]],[[56,4],[56,3]]])
print("原始数组:",arr)
values = np.array([1,40.3])
output = np.isin(arr, values)
print(output)

输出

以下是上述代码的输出。

原始数组: [[[10.  30. ]
  [ 2.  40.3]]

 [[56.   4. ]
  [56.   3. ]]]
[[[False False]
  [False  True]]

 [[False False]
  [False False]]]

使用 np.where() 函数

where() 是 numpy 库提供的一个函数,可用于在 numpy 数组中搜索特定值。此函数返回数组中存在该值的元素的索引。

示例

要检查 NumPy 数组中是否存在特定值,我们使用 NumPy 数组提供的 where() 函数。我们将向此函数传递数组和要搜索的值作为参数。

import numpy as np
arr = np.array([[[10,30],[2,40.3]],[[56,4],[56,3]]])
print("原始数组:",arr)
output = np.where(arr == 3)
print(output)

输出

运行上述代码时,我们会看到以下输出 -

原始数组: [[[10.  30. ]
  [ 2.  40.3]]

 [[56.   4. ]
  [56.   3. ]]]
(array([1]), array([1]), array([1]))


相关文章


有用资源