Làm cách nào để chuyển đổi ma trận bằng cách sử dụng numpy trong python?

Hướng dẫn này chỉ cho bạn cách chuyển đổi ma trận bằng hàm chuyển đổi ma trận NumPy trong Python. Ngoài khả năng chuyển đổi ma trận, hàm transpose[] còn cho phép bạn chuyển đổi các đối tượng dạng mảng khác, chẳng hạn như danh sách các danh sách. Chúng tôi sẽ cho bạn thấy một số ví dụ về chuyển vị trong Python trên mảng và danh sách các danh sách, nhưng trước tiên hãy đảm bảo rằng bạn hiểu chuyển vị của ma trận là gì và tại sao bạn có thể cần sử dụng chúng

Chuyển vị của một ma trận là gì?

Chuyển vị một ma trận tạo ra một ma trận mới trong đó các hàng và cột của ma trận ban đầu được hoán đổi. Chẳng hạn, nếu ma trận ban đầu có hình dạng [3,4], thì hình dạng của ma trận được chuyển đổi sẽ là [4,3]

Ma trận chuyển vị có các ứng dụng trong thế giới thực trong tất cả các lĩnh vực mà đại số tuyến tính được sử dụng để giải các bài toán phức tạp. Một số trong những khu vực này là

  1. Đang xử lý hình ảnh
  2. Phân tích mạng xã hội
  3. Học máy và Khoa học dữ liệu
  4. Điều chế và giải điều chế tín hiệu
  5. lập trình thống kê

Mặc dù việc hoán vị ma trận không cần thiết đối với nhiều thuật toán máy tính hiện đại, nhưng việc hoán vị ma trận trở nên quan trọng trong khoa học máy tính khi thực hiện một số phép tính nhất định, chẳng hạn như các phép biến đổi Fourier nhanh. Cách dữ liệu mảng được lưu trữ trong bộ nhớ [theo hàng hoặc theo cột] có thể thay đổi đáng kể tốc độ thực hiện các tính toán này. Bằng cách hoán đổi hàng và cột, bạn có thể đạt được hiệu suất tính toán nhanh hơn nhiều trong một số trường hợp

Hàm ma trận chuyển vị NumPy

Với thư viện NumPy của Python, việc tìm chuyển vị của ma trận yêu cầu một dòng mã. Để làm như vậy, bạn cần chuyển ma trận của mình dưới dạng danh sách các danh sách tới hàm transpose[] của thư viện NumPy. Nếu bạn có một mảng NumPy, bạn có thể gọi trực tiếp phương thức transpose[] trên mảng NumPy để chuyển vị của mảng. Hãy xem xét một vài ví dụ

Lưu ý Nếu bạn chưa cài đặt thư viện NumPy của Python, bạn có thể làm như vậy bằng cách thực hiện lệnh sau tại thiết bị đầu cuối của mình

$ pip install numpy

Ví dụ này sử dụng NumPy để chuyển đổi ma trận được tạo thông qua mảng NumPy hai chiều

import numpy as np

M1 = np.array[[[1, 10, 51, 26],
               [4,  5, 25, 62],
               [4,  5, 25, 62]]]

print["Shape of the original matrix ", M1.shape]

Trong đoạn mã trên, chúng tôi tạo một mảng NumPy, M1, gồm 3 hàng và 4 cột. Tiếp theo, chúng tôi đã in hình dạng của M1array trên bảng điều khiển. Đây là đầu ra

Shape of original matrix  [3, 4]

Bây giờ chúng ta hãy hoán vị mảng M1 và in ma trận kết quả cùng với hình dạng của nó

M1T = M1.transpose[]
print[f'Transposed Matrix:\n{M1T}']
print["Shape of the transposed matrix ", M1T.shape]

Đây là đầu ra

Transposed Matrix:
[[ 1  4  4]
 [10  5  5]
 [51 25 25]
 [26 62 62]]
Shape of the transposed matrix  [4, 3]

Từ đầu ra, bạn có thể thấy rằng ma trận chuyển đổi hiện có 4 hàng và 3 cột

Ngoài việc gọi hàm transpose[] trên các đối tượng mảng NumPy, bạn có thể chuyển một danh sách các danh sách Python sang phương thức transpose[]. Nhìn vào ví dụ sau

import numpy as np

M2 = [[5, 24, 76, 19],
      [6, 45, 19, 56],
      [9, 62, 25, 82]]
print["Shape of the original matrix ", np.array[M2].shape]

M2T = np.transpose[M2]
print[f'Transposed Matrix:\n{M2T}']
print["Shape of the transposed matrix ", np.array[M2T].shape]

Khi chuyển đổi danh sách các danh sách bằng NumPy, bạn phải chuyển danh sách đó sang hàm

import numpy as np

M1 = np.array[[[1, 10, 51, 26],
               [4,  5, 25, 62],
               [4,  5, 25, 62]]]

print["Shape of the original matrix ", M1.shape]
2. Đây là điểm khác biệt chính giữa việc hoán vị một mảng NumPy, như chúng ta đã làm ở trên và hoán vị một danh sách các danh sách trong Python. Đây là đầu ra từ kịch bản của chúng tôi

Shape of the original matrix  [3, 4]
Transposed Matrix:
[[ 5  6  9]
 [24 45 62]
 [76 19 25]
 [19 56 82]]
Shape of the transposed matrix  [4, 3]

Phần kết luận

Bài viết này giải thích ngắn gọn về chuyển vị ma trận cùng với các ứng dụng và cách sử dụng của nó. Như một ví dụ thực tế, hàm ma trận chuyển vị Numpy của Python được sử dụng để chuyển vị các ma trận được tạo thông qua một mảng NumPy và một danh sách các danh sách

Nếu bạn thích hướng dẫn NumPy này, vui lòng đăng ký bằng cách sử dụng biểu mẫu bên dưới. Chúng tôi sẽ chỉ cho bạn thêm các mẹo và phím tắt Python để giúp bạn thành thạo ngôn ngữ lập trình này

Nhận miễn phí Bộ công cụ dành cho nhà phát triển Python của chúng tôi

Tôi đã tập hợp Bộ công cụ dành cho nhà phát triển Python với hơn 100 tập lệnh Python dựng sẵn bao gồm cấu trúc dữ liệu, Pandas, NumPy, Seaborn, máy học, xử lý tệp, quét web và nhiều thứ khác - và tôi muốn bạn có bộ công cụ này miễn phí. Nhập địa chỉ email của bạn dưới đây và tôi sẽ gửi một bản sao theo cách của bạn

Chủ Đề