Để tính tích trong (inner product) của hai vector 1D, dùng numpy.inner(). Với 1D, đây là tích vô hướng chuẩn: sum(a[i] * b[i]). Với mảng chiều cao hơn, tổng tích trên trục cuối.
Tham số
- a, b (array_like): Hai vector. Nếu non-scalar, trục cuối phải khớp.
Các bước thực hiện
Nhập NumPy, tạo hai vector 1D:
import numpy as np
arr1 = np.array([5, 10, 15])
arr2 = np.array([20, 25, 30])
print("Vector 1...\n", arr1)
print("\nVector 2...\n", arr2)
print("\nSố chiều Vector 1...\n", arr1.ndim)
print("\nSố chiều Vector 2...\n", arr2.ndim)
print("\nHình dạng Vector 1...\n", arr1.shape)
print("\nHình dạng Vector 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])
arr2 = np.array([20, 25, 30])
print("Vector 1...\n", arr1)
print("\nVector 2...\n", arr2)
print("\nSố chiều Vector 1...\n", arr1.ndim)
print("\nSố chiều Vector 2...\n", arr2.ndim)
print("\nHình dạng Vector 1...\n", arr1.shape)
print("\nHình dạng Vector 2...\n", arr2.shape)
print("\nKết quả (Tích trong)...\n", np.inner(arr1, arr2))
Kết quả đầu ra
Vector 1...
[ 5 10 15]
Vector 2...
[20 25 30]
Số chiều Vector 1...
1
Số chiều Vector 2...
1
Hình dạng Vector 1...
(3,)
Hình dạng Vector 2...
(3,)
Kết quả (Tích trong)...
800
Tính toán: 5*20 + 10*25 + 15*30 = 100 + 250 + 450 = 800.