numpy.inner() cho mảng đa chiều: tổng tích trên trục cuối cùng. Với ma trận 2D shape (M, K) và (N, K), kết quả shape (M, N) với result[i, j] = sum(arr1[i] * arr2[j]).
Các bước thực hiện
Nhập NumPy, tạo hai ma trận 2x2:
import numpy as np
arr1 = np.array([[5, 10], [15, 20]])
arr2 = np.array([[6, 12], [18, 24]])
print("Ma trận 1...\n", arr1)
print("\nMa trận 2...\n", arr2)
print("\nSố chiều Ma trận 1...\n", arr1.ndim)
print("\nSố chiều Ma trận 2...\n", arr2.ndim)
print("\nHình dạng Ma trận 1...\n", arr1.shape)
print("\nHình dạng Ma trận 2...\n", arr2.shape)
# Tích trong
print("\nKết quả (Tích trong)...\n", np.inner(arr1, arr2))
Ví dụ hoàn chỉnh
import numpy as np
arr1 = np.array([[5, 10], [15, 20]])
arr2 = np.array([[6, 12], [18, 24]])
print("Ma trận 1...\n", arr1)
print("\nMa trận 2...\n", arr2)
print("\nSố chiều Ma trận 1...\n", arr1.ndim)
print("\nSố chiều Ma trận 2...\n", arr2.ndim)
print("\nHình dạng Ma trận 1...\n", arr1.shape)
print("\nHình dạng Ma trận 2...\n", arr2.shape)
print("\nKết quả (Tích trong)...\n", np.inner(arr1, arr2))
Kết quả đầu ra
Ma trận 1...
[[ 5 10]
[15 20]]
Ma trận 2...
[[ 6 12]
[18 24]]
Số chiều Ma trận 1...
2
Số chiều Ma trận 2...
2
Hình dạng Ma trận 1...
(2, 2)
Hình dạng Ma trận 2...
(2, 2)
Kết quả (Tích trong)...
[[150 330]
[330 750]]
Giải thích: Hàng 1·Hàng 1 = 5*6+10*12=150; Hàng 1·Hàng 2 = 5*18+10*24=330; Hàng 2·Hàng 1 = 15*6+20*18=330; Hàng 2·Hàng 2 = 15*18+20*24=750.