np.linalg.qr(A)或scipy.linalg.orth(A)用于查找正交基础(python)

时间:2019-01-07 20:59:03

标签: python numpy matrix vector

如果我有一个由五个向量v1 .... v5跨越的向量空间,则求A的正交基础,其中A = [v1,v2 ... v5]且A为5Xn

我应该使用np.linalg.qr(A) 还是 scipy.linalg.orth(A)

预先感谢

2 个答案:

答案 0 :(得分:0)

您将要使用:

scipy.linalg.orth(A)

普遍接受的规则是使用scipy.linalg-因为它比np.linalg具有更多功能。希望有帮助!

答案 1 :(得分:0)

请注意,sp.linalg.orth使用SVD,而np.linalg.qr使用QR因式分解。这两个分解都是通过LAPACK函数的包装程序获得的。

我不认为一个偏爱另一个。 SVD会稍微稳定一些,但计算速度也会慢一些。实际上,我认为您不会真正看到很大的不同。