Spalten einer Matrix nach Wert des ersten Eintrages sortieren
Verfasst: Freitag 29. Dezember 2017, 14:25
Liebe Leute im Forum,
ich habe hier ein kleines Problem: Ich möchte die Spalten einer Matrix so sortieren, dass die Einträge der 1. Zeile aufsteigend sortiert sind, die Spalten als ganzes aber erhalten bleiben. Der Befehl "sort" sortiert leider die komplette Matrix um, sodass die Spalten nicht erhalten bleiben.
Hier mein Versuch:
d soll die neue sortierte Matrix sein. Es kommt keine Fehlermeldung, aber auch kein Output. Bin noch blutiger Anfänger und freu mich über Hinweise auf Fehler.
Ich brauch die Lösung des Problems, um Eigenvektoren nach der Größe ihrer Eigenwerte zu sortieren.
Danke schonmal für Eure Hilfe!
ich habe hier ein kleines Problem: Ich möchte die Spalten einer Matrix so sortieren, dass die Einträge der 1. Zeile aufsteigend sortiert sind, die Spalten als ganzes aber erhalten bleiben. Der Befehl "sort" sortiert leider die komplette Matrix um, sodass die Spalten nicht erhalten bleiben.
Hier mein Versuch:
Code: Alles auswählen
import numpy as np
n=7
c=np.eye(n)
c[0]=[9,2,3,3,5,6,7]
b=sorted(c[0])
d=np.zeros((n,n))
while(np.array_equal(b,d[0])==False):
for i in range(n-1):
ffirst=c[:,i]
fsec=c[:,i+1]
if(c[0][i]<c[0][i+1]):
d[:,i]=ffirst
d[:,i+1]=fsec
else:
d[:,i]=fsec
d[:,i+1]=ffirst
print(d)
Ich brauch die Lösung des Problems, um Eigenvektoren nach der Größe ihrer Eigenwerte zu sortieren.
Danke schonmal für Eure Hilfe!