我如何找到行梯队形式 (REF)

How do i find the row echelon form (REF)

import numpy as np
import sympy as sp

Vec = np.matrix([[1,1,1,5],[1,2,0,3],[2,1,3,12]]) 
Vec_rref = sp.Matrix(Vec).rref()
print(Vec_rref) ##<--  this code prints the RREF, but i am looking for the code for REF (See below)

我发现很多代码可以解决 RREF 但不是 REF 的代码,如果 ** 它有意义的话。我开发的代码如下:

(Matrix([
[1, 0,  2,  7],
[0, 1, -1, -2],
[0, 0,  0,  0]]), (0, 1))

我正在寻找可以解决以下问题的代码:

      1XXX
REF = 01XX
      001X

而不是

       100X
RREF = 010X
       001X

这里是新来的,伙计们。提前致谢:-)

您正在使用 sympy: rref 的功能,它与“简化的 row-echelon 形式”相关联。您可能想使用 .echelon_form() 而不是

import numpy as np
import sympy as sp
from scipy import linalg

Vec = np.matrix([[1,1,1,5],
                 [1,2,0,3],
                 [2,1,3,12]]) 

Vec_rref =sp.Matrix(Vec).echelon_form()

print(Vec_rref)

输出:

Matrix([[1, 1, 1, 5], [0, 1, -1, -2], [0, 0, 0, 0]])