NumPy diag () Trong Python được sử dụng để trích xuất một đường chéo hoặc xây dựng một mảng đường chéo. Hàm này nhận một mảng và k làm tham số và trả về mảng đường chéo từ mảng đã cho. Trong bài viết này, tôi sẽ giải thích cách sử dụng NumPy diag () và sử dụng cách trích xuất hoặc xây dựng một mảng chéo từ mảng đã cho với các ví dụ.

1. Ví dụ nhanh về Đường chéo Python NumPy

Nếu bạn đang vội, dưới đây là một số ví dụ nhanh về cách lấy NumPy đường chéo trong Python bằng cách sử dụng diag().

# Below are a quick example

# Example 1: use main Diagonal elements
arr2 = np.  diag (arr)

# Example 2: use above main diagonal
arr2 = np.  diag (arr, 1)

# Example 3: use below main diagonal
arr2 = np.  diag (arr, -1)

# Example 4: construct diagonal from numpy array
arr = np.array([3, 7, 12, 18])
arr2 = np.  diag (arr)

# Example 5: use  diag  to numpy row vector
arr = np.array([[3, 7, 12, 18]])
arr2 = np.  diag (arr[0])

2. Cú pháp của numpy.diag () Hàm số

Sau đây là cú pháp để tạo numpy.diag () hàm số.

 
# Syntax of numpy.diag()
 numpy.diag (arr, k=0)
 

2.1 Tham số của đường chéo ()

  • arr: Nhập mảng arr. Đối với mảng 2-D, nó trả về một bản sao của đường chéo thứ k của nó. Đối với mảng 1-D, trả về mảng 2-D với arr trên đường chéo thứ k.
  • k: Giá trị mặc định là 0. Sử dụng k> 0 để lấy các đường chéo phía trên đường chéo chính và k <0 để lấy các đường chéo bên dưới đường chéo chính.

2.2 Giá trị hoàn trả của đường chéo

Hàm này được sử dụng để trích xuất các mảng đường chéo hoặc được xây dựng.

3. Cách sử dụng numpy.diag () Để trích xuất đường chéo

Đường chéo khó chịu () được sử dụng để trích xuất hoặc xây dựng một mảng 2-d chéo. Nó chứa hai tham số: một mảng đầu vào và k, quyết định đường chéo, tức là, k = 0 cho đường chéo chính, k = 1 cho đường chéo chính ở trên, hoặc k = -1 cho đường chéo dưới. Nó được sử dụng để thực hiện phép toán và thống kê trên mảng đa chiều.

import numpy as np
  
# matrix creation by array input
arr = np.matrix([[9, 18, 25], 
                 [155 ,240, 68], 
                 [29, 82, 108]])

# use main Diagonal elements
arr2 = np.  diag (arr)
print(arr2)

# Output
# [  9 240 108]

Nếu chúng tôi cung cấp k = 1, nó sẽ trả về một đường chéo phía trên đường chéo chính, từ ví dụ của chúng tôi, nó sẽ trả về [18, 68].

# use above main diagonal
arr2 = np.  diag (arr, 1)
print(arr2)

# Output
# [18 68]

Nếu chúng ta sử dụng k = -1, nó sẽ cho chúng ta đường chéo bên dưới của đường chéo chính, từ ví dụ của chúng ta, nó trả về [155 82].

# use below main diagonal
arr2 = np.  diag (arr, -1)
print(arr2)

# Output
# [155  82]

4. Lấy Ma trận 4 × 4 và Áp dụng đường chéo () Hàm số

Hãy lấy ma trận 4X4 và nhận được NumPy đường chéo từ nó. Từ ví dụ dưới đây, nó trả về 6, 35 và 27.

import numpy as np
  
# use 4×4 matrix
arr = np.matrix([[6,9,15], 
                 [24,35,26], 
                 [19,8,27], 
                 [41,53,15]])

# main diagonal
arr2 = np.  diag (arr)
print(arr2)

# Output
# [ 6 35 27]

# above main diagonal
arr2 = np.  diag (arr, 1)
print(arr2)

# Output
# [ 9 26]

# below main diagonal
arr2 = np.  diag (arr, -1)
print(arr2)

# Output
# [24  8 15]

5. Sử dụng xây dựng đường chéo từ Python NumPy Mảng

Bằng cách sử dụng numpy.diag () chúng ta cũng có thể tạo một ma trận với các giá trị đường chéo.

import numpy as np

arr = np.array([3, 7, 12, 18])

# construct diagonal from numpy array
arr2 = np.  diag (arr)
print(arr2)

# OutPut
# [[ 3  0  0  0]
#  [ 0  7  0  0]
#  [ 0  0 12  0]
#  [ 0  0  0 18]]

Nếu bạn có vectơ hàng, bạn có thể thực hiện ví dụ dưới đây.

# use  diag  to numpy row vector
arr = np.array([[3, 7, 12, 18]])
arr2 = np.  diag (arr[0])
print(arr2)

Cho kết quả tương tự như trên.

6. Kết luận

Trong bài viết này, tôi đã giải thích cách sử dụng numpy.diag () và sử dụng cách trích xuất một đường chéo hoặc xây dựng một mảng chéo từ mảng đã cho với các ví dụ.

Học vui vẻ !!

Trên đây là thông tin về Cách lấy đường chéo của Mảng NumPy Sử dụng đường chéo (). Nếu bạn có bất kì câu hỏi nào, xin vui lòng hỏi signalfix.net trong một bình luận bên dưới. Tôi rất vui khi được giúp đỡ bạn.