Reduced Row Echelon Form
Verfasst: Mittwoch 1. April 2015, 10:54
Gibt es ein eingebautes Stück Kot, dass dies für mich übernehmen könnte? Etwas wie oder sonst etwas? Ich könnte natürlich auch dies hier machen
Dennoch denke ich, es müsste eine einfachere Methode existieren? Schließlich haben wir ja Scipy 
Liebe Grüße!
Sorry for my bad German!
Code: Alles auswählen
np.echelon(A)
Code: Alles auswählen
def ToReducedRowEchelonForm( M):
if not M: return
lead = 0
rowCount = len(M)
columnCount = len(M[0])
for r in range(rowCount):
if lead >= columnCount:
return
i = r
while M[i][lead] == 0:
i += 1
if i == rowCount:
i = r
lead += 1
if columnCount == lead:
return
M[i],M[r] = M[r],M[i]
lv = M[r][lead]
M[r] = [ mrx / float(lv) for mrx in M[r]]
for i in range(rowCount):
if i != r:
lv = M[i][lead]
M[i] = [ iv - lv*rv for rv,iv in zip(M[r],M[i])]
lead += 1
mtx = [
[ 1, 2, -1, -4],
[ 2, 3, -1, -11],
[-2, 0, -3, 22],]
ToReducedRowEchelonForm( mtx )
for rw in mtx:
print ', '.join( (str(rv) for rv in rw) )

Liebe Grüße!
Sorry for my bad German!