Diese Matrizen sollen jetzt absteigend sortiert werden.
Das Ergebnis sollte dann so aussehen, das in einer neuen Matrix(sortmatrix) die Matrizen sortiert vorliegen. In diesem Fall würde dann die Matrix{1}{3} an erster Stelle der sortmatrix{1}{1} stehen und die Matrix{1}{2} an der Stelle sortmatrix{1}{2} und so weiter.
Es geht nicht nur darum 3 Matritzen zu sortieren sondern ein paar mehr. Beispiel dient nur der Veranschaulichung.
Gibts dafür ne einfache Lösung oder muss eine eine komplizierte Schleife schreiben ? An der komplizierten Schleife hab ich mich schon versucht jedoch war das nicht von Erfolg gekrönt . 😔
Das funktioniert genau so wie ich es brauche nur versteh ich nicht so ganz was der Code macht.
1. als erstes ermittelt er die Größe jeder Matrix und speichert das als Vektor. Für was steht die 1 am Ende ?
2. er sortiert den len Vektor nach der Größe und sortindex speichert dann quasi was an welche Stelle kommt ?
3. wie schließt der Code vom sortIndex auf die ursprünglichen Matrizen ?
Und ja die cell arrays brauch ich weil es mehrer solcher Matrix Package gibt . Hab nur um das Beispiel verständlich zu halten ein Package ausgewählt. Aber das sollte ich selber hin bekommen , muss ja dann nur noch ne For schleife drüber legen .
1. als erstes ermittelt er die Größe jeder Matrix und speichert das als Vektor. Für was steht die 1 am Ende ?
Siehe
doccellfun
, hier im Abschnitt "Backward compatibility": Der 'size'-Befehl nimmt als 3. Input die Dimension entlang der die Länge bestimmt werden soll, also wie in:
2. er sortiert den len Vektor nach der Größe und sortindex speichert dann quasi was an welche Stelle kommt ?
Siehe
docsort
: Der 2. Output ist die Sortierungs-Reihenfolge.
Zitat:
3. wie schließt der Code vom sortIndex auf die ursprünglichen Matrizen ?
Das verstehe ich nicht. sortIndex ist die Reihenfolge, in der sortiert werden soll. Also verwendet man das einfach als Index. Versuche es einfach mal mit ein paar Zahlen aus:
Code:
x = rand(1,4) [sortedX, index] = sort(x)
sortedX2 = x(sortIndex)
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.