Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Tính nghịch đảo ma trận trong Python

Để tính nghịch đảo nhân (multiplicative inverse) của ma trận vuông, dùng numpy.linalg.inv(). Trả về ma trận ainv thỏa mãn dot(a, ainv) = dot(ainv, a) = eye(a.shape[0]). Ma trận phải vuông và non-singular.

Tham số

  • a (array_like): Ma trận vuông cần nghịch đảo.

Các bước thực hiện

Nhập thư viện, tạo ma trận 2x2:

import numpy as np
from numpy.linalg import inv

arr = np.array([[5, 10], [15, 20]])
print("Mảng của chúng ta...\n", arr)
print("\nSố chiều...\n", arr.ndim)
print("\nKiểu dữ liệu...\n", arr.dtype)
print("\nHình dạng...\n", arr.shape)

# Tính nghịch đảo
print("\nKết quả...\n", np.linalg.inv(arr))

Ví dụ hoàn chỉnh

import numpy as np
from numpy.linalg import inv

arr = np.array([[5, 10], [15, 20]])
print("Mảng của chúng ta...\n", arr)
print("\nSố chiều...\n", arr.ndim)
print("\nKiểu dữ liệu...\n", arr.dtype)
print("\nHình dạng...\n", arr.shape)
print("\nKết quả...\n", np.linalg.inv(arr))

Kết quả đầu ra

Mảng của chúng ta...
 [[ 5 10]
 [15 20]]
Số chiều...
 2
Kiểu dữ liệu...
 int64
Hình dạng...
 (2, 2)
Kết quả...
 [[-0.4  0.2]
 [ 0.3 -0.1]]