在 Numpy 中屏蔽给定区间之外的数组

numpyserver side programmingprogramming更新于 2025/8/15 1:37:17

要屏蔽给定区间之外的数组,请使用 Python Numpy 中的 numpy.ma.masked_outside() 方法。它是 masked_where 的快捷方式,其中 x 在区间 [v1,v2] (x < v1)|(x > v2) 之外时,条件为 True。边界 v1 和 v2 可以按任意顺序给出。

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

步骤

首先,导入所需的库 −

import numpy as np
import numpy.ma as ma

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

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

获取数组的类型−

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

获取数组的维度 −

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

获取数组的形状 −

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

获取数组元素的数量 7minus;

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

要屏蔽给定区间之外的数组,请使用 Python Numpy 中的 numpy.ma.masked_outside() 方法。在这里,我们将设置区间,即屏蔽 65 和 85 之外的数组。 −

print("
结果...
",np.ma.masked_inside(arr, 65, 85))

示例

import numpy as np
import numpy.ma as ma

# 使用 numpy.array() 方法创建一个包含 int 元素的数组
arr = np.array([[83, 55, 73], [90, 49, 39], [73, 87, 51], [82, 45, 67]])
print("数组...
", arr) # 获取数组的类型 print("
数组类型...
", arr.dtype) # 获取数组的维度 print("
数组维度...
",arr.ndim) # 获取数组的形状 print("
我们的数组形状...
",arr.shape) # 获取数组元素的数量 print("
数组中元素的数量...
",arr.size) # 要屏蔽给定区间之外的数组,请使用 Python Numpy 中的 numpy.ma.masked_outside() 方法 # 在这里,我们将设置区间,即屏蔽 65 和 85 之外的数组 print("
结果...
",np.ma.masked_inside(arr, 65, 85))

输出

数组...
[[83 55 73]
[90 49 39]
[73 87 51]
[82 45 67]]

数组类型...
int64

数组维度...
2

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

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

结果...
[[-- 55 --]
[90 49 39]
[-- 87 51]
[-- 45 --]]

相关文章