檢查 NumPy 中掩碼陣列中哪個元素不等於給定值


要檢查掩碼陣列中哪個元素不等於給定值,請使用 **ma.MaskedArray.__ne__()** 方法。對於每個與給定值 val 不等的陣列元素,將返回 True。掩碼陣列是標準 numpy.ndarray 和掩碼的組合。掩碼要麼是 nomask(表示關聯陣列的無值無效),要麼是布林值陣列,用於確定關聯陣列的每個元素的值是否有效。

NumPy 提供了全面的數學函式、隨機數生成器、線性代數例程、傅立葉變換等等。它支援各種硬體和計算平臺,並能很好地與分散式、GPU 和稀疏陣列庫協同工作。

步驟

首先,匯入所需的庫:

import numpy as np
import numpy.ma as ma

使用 numpy.array() 方法建立一個包含 int 元素的陣列:

arr = np.array([[55, 85, 68, 84], [67, 33, 39, 53], [29, 88, 51, 37], [56, 45, 67, 85]])
print("Array...
", arr) print("
Array type...
", arr.dtype)

獲取陣列的維度:

print("Array Dimensions...
",arr.ndim)

建立一個掩碼陣列並掩蓋其中一些無效元素:

maskArr = ma.masked_array(arr, mask =[[1, 1, 0, 0], [ 0, 0, 1, 0], [0, 0, 0, 1], [0, 1, 0, 0]])
print("
Our Masked Array
", maskArr) print("
Our Masked Array type...
", maskArr.dtype)

獲取掩碼陣列的維度:

print("
Our Masked Array Dimensions...
",maskArr.ndim)

獲取掩碼陣列的形狀:

print("
Our Masked Array Shape...
",maskArr.shape)

獲取掩碼陣列的元素個數:

print("
Elements in the Masked Array...
",maskArr.size)

要比較的值:

val = 67
print("
The given value to be compared with the masked array elements...
",val)

要檢查掩碼陣列中哪個元素不等於給定值,請使用 ma.MaskedArray.__ne__() 方法。返回布林型別,即 True 和 False。對於每個與給定值 val 不等的陣列元素,將返回 True:

print("
Display True for each element not equal to a given value val...
", maskArr.__ne__(val))

示例

import numpy as np
import numpy.ma as ma

# Create an array with int elements using the numpy.array() method
arr = np.array([[55, 85, 68, 84], [67, 33, 39, 53], [29, 88, 51, 37], [56, 45, 67, 85]])
print("Array...
", arr) print("
Array type...
", arr.dtype) # Get the dimensions of the Array print("
Array Dimensions...
",arr.ndim) # Create a masked array and mask some of them as invalid maskArr = ma.masked_array(arr, mask =[[1, 1, 0, 0], [ 0, 0, 1, 0], [0, 0, 0, 1], [0, 1, 0, 0]]) print("
Our Masked Array
", maskArr) print("
Our Masked Array type...
", maskArr.dtype) # Get the dimensions of the Masked Array print("
Our Masked Array Dimensions...
",maskArr.ndim) # Get the shape of the Masked Array print("
Our Masked Array Shape...
",maskArr.shape) # Get the number of elements of the Masked Array print("
Elements in the Masked Array...
",maskArr.size) # The value to be compared val = 67 print("
The given value to be compared with the masked array elements...
",val) # To check which element in a masked array is not equal to a given value, use the ma.MaskedArray.__ne__() method # Returns with boolean type i.e. True and False. # True is returned for every array element not equal to a given value val print("
Display True for each element not equal to a given value val...
", maskArr.__ne__(val))

輸出

Array...
[[55 85 68 84]
[67 33 39 53]
[29 88 51 37]
[56 45 67 85]]

Array type...
int64

Array Dimensions...
2

Our Masked Array
[[-- -- 68 84]
[67 33 -- 53]
[29 88 51 --]
[56 -- 67 85]]

Our Masked Array type...
int64

Our Masked Array Dimensions...
2

Our Masked Array Shape...
(4, 4)

Elements in the Masked Array...
16

The given value to be compared with the masked array elements...
67

Display True for each element not equal to a given value val...
[[-- -- True True]
[False True -- True]
[True True True --]
[True -- False True]]

更新於:2022年2月5日

瀏覽量:111

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.