【发布时间】:2021-08-14 08:30:35
【问题描述】:
给定一个矩阵B,形状为(M, N),其中M > N。如何找到与B 中所有列垂直的向量v(形状为M)。
我尝试使用 Numpy numpy.linalg.lstsq 方法来解决:Bx = 0。 0 这里是一个带有M 零的向量。
它返回一个具有(N,) 形状的零向量。
【问题讨论】:
-
我认为您正在寻找 Gram-Schmidt Orthogonization。也许this gist here 有帮助。
-
@NMme 谢谢你的回复。您建议的链接中的函数与 numpy 函数''' Q, R = np.linalg.qr(B)''' 相同吗?
-
我对线性代数了解不多,但矩阵需要满秩,以便根据Wikipedia 等价成立。但是,AFAIK,您的矩阵不是满秩的,因为您尝试找到一个正交向量并假设它确实存在(由于矩阵的形状应该是这种情况)
标签: python-3.x numpy linear-algebra