1
給定一個尺寸爲m乘以n(其中n> m)的凹凸ndarray
,我怎樣才能找到線性無關的列?如何找到矩形矩陣的列空間的基礎?
給定一個尺寸爲m乘以n(其中n> m)的凹凸ndarray
,我怎樣才能找到線性無關的列?如何找到矩形矩陣的列空間的基礎?
一種方法是使用LU decomposition。因子U
的大小與您的矩陣大小相同,但會是上三角形。在U
的每行中,選取第一個非零元素:這些元素是屬於線性無關列的元素。自包含例如:
import numpy as np
from scipy.linalg import lu
A = np.array([[1, 2, 3], [2, 4, 2]]) # example for testing
U = lu(A)[2]
lin_indep_columns = [np.flatnonzero(U[i, :])[0] for i in range(U.shape[0])]
輸出:[0,2],這意味着第0和A形式第二列其列空間的基礎。