返回 NumPy 中两个掩码的三维数组的内积


要返回两个掩码数组的内积,请在 Python NumPy 中使用 **ma.inner()** 方法。out 参数建议,如果两个数组都是标量或都是一维数组,则返回标量;否则返回数组。out.shape = (*a.shape[:-1], *b.shape[:-1])。

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

步骤

首先,导入所需的库 -

import numpy as np import numpy.ma as ma

使用 numpy.arange() 方法创建数组 1,其中包含 int 元素 -

arr1 = np.arange(24).reshape((2,3,4)) print("Array1...", arr1) print("Array type...", arr1.dtype)

掩码数组 1 -

arr1[0, 0, 1] = ma.masked

显示掩码数组 1 -

print("Masked Array1...",arr1)

使用 numpy.arange() 方法创建数组 2,其中包含 int 元素 -

arr2 = np.arange(24).reshape((2,3,4)) print("Array2...", arr2) print("Array type...", arr2.dtype)

创建另一个掩码数组 2 -

arr2 = ma.array(arr2)

掩码数组 2 -

arr2[0, 1, 2] = ma.masked arr2[1, 2, 2] = ma.masked

显示掩码数组 2 -

print("Masked Array2...",arr2)

要返回两个掩码数组的内积,请在 Python NumPy 中使用 ma.inner() 方法 -

print("Result of inner product (3D arrays)...",np.ma.inner(arr1, arr2))

示例

Open Compiler
import numpy as np import numpy.ma as ma # Array 1 # Creating a 3D array with int elements using the numpy.arange() method arr1 = np.arange(24).reshape((2,3,4)) print("Array1...", arr1) print("Array type...", arr1.dtype) # Get the dimensions of the Array print("Array Dimensions...",arr1.ndim) # Get the shape of the Array print("Our Array Shape...",arr1.shape) # Get the number of elements of the Array print("Elements in the Array...",arr1.size) # Create a masked array arr1 = ma.array(arr1) # Mask Array1 arr1[0, 0, 1] = ma.masked # Display Masked Array 1 print("Masked Array1...",arr1) # Array 2 # Creating another 3D array with int elements using the numpy.arange() method arr2 = np.arange(24).reshape((2,3,4)) print("Array2...", arr2) print("Array type...", arr2.dtype) # Get the dimensions of the Array print("Array Dimensions...",arr2.ndim) # Get the shape of the Array print("Our Array Shape...",arr2.shape) # Get the number of elements of the Array print("Elements in the Array...",arr2.size) # Create a masked array arr2 = ma.array(arr2) # Mask Array2 arr2[0, 1, 2] = ma.masked arr2[1, 2, 2] = ma.masked # Display Masked Array 2 print("Masked Array2...",arr2) # To return the inner product of two masked arrays, use the ma.inner() method in Python Numpy print("Result of inner product (3D arrays)...",np.ma.inner(arr1, arr2))

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

输出

Array1...
[[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]

[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]]

Array type...
int64

Array Dimensions...
3

Our Array Shape...
(2, 3, 4)

Elements in the Array...
24

Masked Array1...
[[[0 -- 2 3]
[4 5 6 7]
[8 9 10 11]]

[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]]

Array2...
[[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]

[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]]

Array type...
int64

Array Dimensions...
3

Our Array Shape...
(2, 3, 4)

Elements in the Array...
24

Masked Array2...
[[[0 1 2 3]
[4 5 -- 7]
[8 9 10 11]]

[[12 13 14 15]
[16 17 18 19]
[20 21 -- 23]]]

Result of inner product (3D arrays)...
[[[[ 13 21 53]
[ 73 93 69]]

[[ 38 90 214]
[ 302 390 346]]

[[ 62 154 366]
[ 518 670 602]]]


[[[ 86 218 518]
[ 734 950 858]]

[[ 110 282 670]
[ 950 1230 1114]]

[[ 134 346 822]
[1166 1510 1370]]]]

更新于: 2022 年 2 月 5 日

121 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告