在 Python 中獲取兩個多維陣列的外積


要獲取兩個多維陣列的外積,請在 Python 中使用 numpy.outer() 方法。第一個引數 a 是第一個輸入向量。如果輸入不是一維的,則將其展平。第二個引數 b 是第二個輸入向量。如果輸入不是一維的,則將其展平。第三個引數 out 是儲存結果的位置。

給定兩個向量,a = [a0, a1, ..., aM] 和 b = [b0, b1, ..., bN],外積 [1] 為 -

[[a0*b0 a0*b1 ... a0*bN ]
[a1*b0 .
[ ... .
[aM*b0    aM*bN ]]

步驟

首先,匯入所需的庫 -

import numpy as np

使用 array() 方法建立兩個 NumPy 二維陣列 -

arr1 = np.array([[5, 10], [15, 20]])
arr2 = np.array([[6, 12], [18, 24]])

顯示陣列 -

print("Array1...\n",arr1)
print("\nArray2...\n",arr2)

檢查兩個陣列的維度 -

print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

檢查兩個陣列的形狀 -

print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

要獲取兩個多維陣列的外積,請使用 numpy.outer() 方法 -

print("\nResult (Outer Product)...\n",np.outer(arr1, arr2))

示例

import numpy as np

# Creating two numpy Two-Dimensional array using the array() method
arr1 = np.array([[5, 10], [15, 20]])
arr2 = np.array([[6, 12], [18, 24]])

# Display the arrays
print("Array1...\n",arr1)
print("\nArray2...\n",arr2)

# Check the Dimensions of both the arrays
print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

# Check the Shape of both the arrays
print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

# To get the Outer product of two multi-dimensional arrays, use the numpy.outer() method in Python
print("\nResult (Outer Product)...\n",np.outer(arr1, arr2))

輸出

Array1...
[[ 5 10]
[15 20]]

Array2...
[[ 6 12]
[18 24]]

Dimensions of Array1...
2

Dimensions of Array2...
2

Shape of Array1...
(2, 2)

Shape of Array2...
(2, 2)

Result (Outer Product)...
[[ 30 60 90 120]
[ 60 120 180 240]
[ 90 180 270 360]
[120 240 360 480]]

更新於: 2022-03-02

483 次檢視

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.