如何在 Python 中计算分解 A=P[I_r,0;0,0]Q



给定矩阵 A,是否可以方便地获得矩阵等价中出现的可逆矩阵 P 和 Q,并用 numpy 或 scipy 满足 A=P[I_r,0;0,0]Q?

也许你可以做一个奇异值分解(SVD),然后将奇异值乘以一个酉矩阵。

请参阅 http://en.wikipedia.org/wiki/Singular_value_decomposition SVD 的定义

基本上你会得到一个酉矩阵,一个对角矩阵和另一个酉矩阵。对角矩阵具有等于秩 (A) 的非零元素数。

在python代码中,它是

P, S, Q = numpy.linalg.svd(A)
for i, row in enumerate(Q):
  row *= S[i]

请参阅有关numpy.linalg.svd http://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.svd.html

P,Q然后成为你想要的。但请记住,这种分解没有独特的方式。

相关内容

  • 没有找到相关文章

最新更新