python – 使用scipy计算矩阵秩

我想使用scipy计算矩阵的mathematical rank。最明显的函数numpy.rank计算数组的维数(即标量具有维度0,向量1,矩阵2等)。我知道numpy.linalg.lstsq模块有这个能力,但我想知道这样的基本操作是否内置到矩阵类的某个地方。

这里有一个明确的例子:

from numpy import matrix, rank
A = matrix([[1,3,7],[2,8,3],[7,8,1]])
print rank(A)

这给出了2的维度,我在寻找答案3。

Numpy提供numpy.linalg.matrix_rank():

>>> import numpy
>>> numpy.__version__
'1.5.1'
>>> A = numpy.matrix([[1,3,7],[2,8,3],[7,8,1]])
>>> numpy.linalg.matrix_rank(A)
3
http://stackoverflow.com/questions/2473983/calculate-matrix-rank-using-scipy

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:python – 使用scipy计算矩阵秩