在 Numpy 中屏蔽不等于给定值的数组元素

numpyserver side programmingprogramming更新于 2025/8/15 2:07:17

要屏蔽不等于给定值的数组,请使用 Python Numpy 中的 numpy.ma.masked_not_equal() 方法。此函数是 masked_where 的快捷方式,条件为 = (x != value)。

屏蔽数组是标准 numpy.ndarray 和掩码的组合。掩码可以是 nomask(表示关联数组的所有值均有效),也可以是布尔值数组,用于确定关联数组中每个元素的值是否有效。

步骤

首先,导入所需的库 −

import numpy as np
import numpy.ma as ma

使用 numpy.array() 方法创建一个包含 int 元素的数组 −

arr = np.array([[83, 55, 91], [82, 33, 39], [73, 82, 51], [90, 45, 82]])
print("数组...
", arr)

获取数组的类型−

print("
数组类型...
", arr.dtype)

获取数组的维度 −

print("
数组维度...
",arr.ndim)

获取数组的形状 −

print("
我们的数组形状...
",arr.shape)

获取数组元素的数量 −

print("
数组中元素的数量...
",arr.size)

要屏蔽不等于给定值的数组,请使用 Python Numpy 中的 numpy.ma.masked_not_equal() 方法 −

print("
结果...
",np.ma.masked_not_equal(arr, 82))

示例

import numpy as np
import numpy.ma as ma

# 使用 numpy.array() 方法创建一个包含 int 元素的数组
arr = np.array([[83, 55, 91], [82, 33, 39], [73, 82, 51], [90, 45, 82]])
print("数组...
", arr) # 获取数组的类型 print("
数组类型...
", arr.dtype) # 获取数组的维度 print("
数组维度...
",arr.ndim) # 获取数组的形状 print("
我们的数组形状...
",arr.shape) # 获取数组元素的数量 print("
数组中元素的数量...
",arr.size) # 要屏蔽不等于给定值的数组,请使用 Python Numpy 中的 numpy.ma.masked_not_equal() 方法 print("
结果...
",np.ma.masked_not_equal(arr, 82))

输出

数组...
[[83 55 91]
[82 33 39]
[73 82 51]
[90 45 82]]

数组类型...
int64

数组维度...
2

我们的数组形状...
(4, 3)

数组中元素的数量...
12

结果...
[[-- -- --]
[82 -- --]
[-- 82 --]
[-- -- 82]]

相关文章