numpy.diag()
函數是 NumPy 庫中的一個功能,用于從給定的二維數組中提取對角線元素,或者創建一個新的二維數組,其對角線元素為給定的一維數組
提取對角線元素:如果你有一個二維數組(通常是方陣),并且想要獲取其主對角線上的所有元素,可以使用 numpy.diag()
函數。例如:
import numpy as np
A = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
diagonal_elements = np.diag(A)
print(diagonal_elements) # 輸出:[1 5 9]
創建對角線矩陣:如果你有一個一維數組,并且想要創建一個對角線矩陣,其對角線元素為該一維數組的元素,可以使用 numpy.diag()
函數。例如:
import numpy as np
v = np.array([1, 2, 3])
diagonal_matrix = np.diag(v)
print(diagonal_matrix)
# 輸出:
# [[1 0 0]
# [0 2 0]
# [0 0 3]]
提取子對角線元素:numpy.diag()
函數還可以用于提取子對角線元素。通過設置 k
參數,可以指定要提取的對角線。例如:
import numpy as np
A = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
subdiagonal_elements = np.diag(A, k=-1)
print(subdiagonal_elements) # 輸出:[4 8]
總之,numpy.diag()
函數在處理二維數組時非常有用,可以幫助你提取和操作對角線元素。