获取在 Numpy 中遍历时在每个维度上要步进的字节元组

numpyserver side programmingprogramming

要获取在遍历数组时在每个维度上要步进的字节元组,请使用 Numpy 中的 ma​​.MaskedArray.strides 属性。数组 a 中元素 (i[0], i[1], ..., i[n]) 的字节偏移量为 −

offset = sum(np.array(i) * a.strides)

掩码要么是 nomask, 表示关联数组的任何值均无效,要么是布尔值数组,用于确定关联数组中每个元素的值是否有效。

步骤

首先,导入所需的库 −

import numpy as np
import numpy.ma as ma

使用 numpy.array() 方法创建数组 −

arr = np.array([[35, 85], [67, 33]])
print("数组...
", arr) print("
数组类型...
", arr.dtype) print("
数组项大小...
", arr.itemsize)

获取数组的维度 −

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

创建一个掩码数组并将其中一些掩码为无效 −

maskArr = ma.masked_array(arr, mask =[[0, 0], [ 0, 1]])
print("
我们的掩码数组
", maskArr) print("
我们的掩码数组类型...
", maskArr.dtype)

获取掩码数组的 itemsize −

print("
我们的掩码数组 itemsize...
", maskArr.itemsize)

获取掩码数组的维度 −

print("
我们的掩码数组维度...
",maskArr.ndim)

获取掩码数组的维度 −

print("
我们的掩码数组形状...
",maskArr.shape)

获取掩码数组元素的数量 −

print("
掩码数组中的元素...
",maskArr.size)

获取遍历数组时在每个维度中要步进的字节元组,使用 Numpy 中的 ma.MaskedArray.strides 属性

print("
步幅...
",maskArr.strides)

示例

import numpy as np
import numpy.ma as ma

arr = np.array([[35, 85], [67, 33]])
print("数组...
", arr) print("
数组类型...
", arr.dtype) print("
数组项大小...
", arr.itemsize) # 获取数组的维度 print("数组维度...
",arr.ndim) # 创建一个掩码数组并将其中一些掩码为无效 maskArr = ma.masked_array(arr, mask =[[0, 0], [ 0, 1]]) print("
我们的掩码数组
", maskArr) print("
我们的掩码数组类型...
", maskArr.dtype) # 获取掩码数组的项大小 print("
我们的掩码数组项大小...
", maskArr.itemsize) # 获取掩码数组的维度 print("
我们的掩码数组维度...
",maskArr.ndim) # 获取掩码数组的形状 print("
我们的掩码数组形状...
",maskArr.shape) # 获取掩码数组的元素数量 print("
掩码数组中的元素...
",maskArr.size) # 要获取遍历数组时在每个维度上步进的字节元组,请使用 Numpy 中的 ma.MaskedArray.strides 属性 print("
步幅...
",maskArr.strides)

输出

数组...
[[35 85]
[67 33]]

数组类型...
int64

数组 itemsize...
8
数组维度...
2

我们的屏蔽数组
[[35 85]
[67 --]]

我们的屏蔽数组类型...
int64

我们的屏蔽数组 itemsize...
8

我们的屏蔽数组维度...
2

我们的屏蔽数组形状...
(2, 2)

屏蔽数组中的元素...
4

步幅...
(16, 8)

相关文章