|
|
Matrix neu sortieren/Nullen nach hinten schieben |
|
Joa |
Forum-Century
|
|
Beiträge: 133
|
|
|
|
Anmeldedatum: 19.05.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2013b
|
|
|
|
|
|
Verfasst am: 04.08.2009, 11:03
Titel: Matrix neu sortieren/Nullen nach hinten schieben
|
|
Hallo,
ich habe folgendes Problem.
Ich habe eine Matrix in der ich bestimmte Werte zu Null gesetzt hab. Jetzt möchte ich die Werte in den jeweiligen Zeilen die nicht Null sind, nach vorne schieben und die Nullen nach hinten. Dabei sollen aber die Werte die in der gleichen Zeile stehen auch in dieser zeile und zusammen stehen bleiben.
hat jemand eine Idee für die Lösung dieses Problems?
Vielen Dank schonmal
LG Joa
|
|
|
|
|
derOli |
Forum-Meister
|
|
Beiträge: 579
|
|
|
|
Anmeldedatum: 19.03.08
|
|
|
|
Wohnort: Leipzig
|
|
|
|
Version: 2010a
|
|
|
|
|
|
Verfasst am: 04.08.2009, 11:55
Titel:
|
|
Hi,
wahrscheinlich löst der Befehl sort dein Problem, aber ich verstehe nicht so richtig was du machen willst. Nach was soll sortiert werden also nach einer Spalte oder einer Zeile? Soll die Zeile mit den meisten Zahlen ungleich null oben stehen?
Erklär das bitte mal etwas genauer am besten mit Minimalbeispiel.
Viele Grüße,
der Oli
|
|
|
Joa |
Themenstarter
Forum-Century
|
|
Beiträge: 133
|
|
|
|
Anmeldedatum: 19.05.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2013b
|
|
|
|
|
|
Verfasst am: 04.08.2009, 12:05
Titel:
|
|
Also, ich habe eine Matrix.
Die sieht ungefähr so aus:
Und ich möchte jetzt das die Zahlen die ungleich Null sind nach vorne rutschen, so dass die Matrix dann so aussieht:
Ich habe das jetzt mit einem selbst gebastelten Sortieralgorithmus gemacht, aber vielleicht geht das ja auch noch einfacher?
LG Joa
|
|
|
derOli |
Forum-Meister
|
|
Beiträge: 579
|
|
|
|
Anmeldedatum: 19.03.08
|
|
|
|
Wohnort: Leipzig
|
|
|
|
Version: 2010a
|
|
|
|
|
|
Verfasst am: 18.08.2009, 12:06
Titel:
|
|
Also ich habs jetzt so einigermassen hingekriegt. Ist garnicht so ne einfache Sache wie ich erst dachte. (Vielleicht auch zu kompliziert gedacht.)
Aber ganz ohne Schleife komme ich auch nicht aus. Vielleicht hat ja jemand eine Idee wie man aus einem Vektor mit z.B. [2 3 4 2] die Werte immer von 1 bis zu dem Wert in den Vektor kriegt also sollte bei obigen Beispiel rauskommen: [1 2 1 2 3 1 2 3 4 1 2]. Das hab ich jetzt bloß mit ner Schleife hinbekommen.
Viele Grüße,
der Oli
|
|
|
denny |
Supporter
|
|
Beiträge: 3.853
|
|
|
|
Anmeldedatum: 14.02.08
|
|
|
|
Wohnort: Ulm
|
|
|
|
Version: R2012b
|
|
|
|
|
|
Verfasst am: 18.08.2009, 13:43
Titel:
|
|
Hallo,
so könnte es auch gehen
|
|
|
outsider |
Forum-Meister
|
|
Beiträge: 806
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: München
|
|
|
|
Version: R2012b
|
|
|
|
|
|
Verfasst am: 18.08.2009, 13:49
Titel:
|
|
|
|
outsider |
Forum-Meister
|
|
Beiträge: 806
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: München
|
|
|
|
Version: R2012b
|
|
|
|
|
|
Verfasst am: 18.08.2009, 13:50
Titel:
|
|
@denny
Hey - Du warst schneller - wir haben eigentlich die gleiche Lösung!
MfG
|
|
|
denny |
Supporter
|
|
Beiträge: 3.853
|
|
|
|
Anmeldedatum: 14.02.08
|
|
|
|
Wohnort: Ulm
|
|
|
|
Version: R2012b
|
|
|
|
|
|
Verfasst am: 18.08.2009, 13:57
Titel:
|
|
@outsider
stimmt sieht ähnlich aus, aber deine ist wie immer viel kürzer
|
|
|
Titus |
Forum-Meister
|
|
Beiträge: 871
|
|
|
|
Anmeldedatum: 19.07.07
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.08.2009, 14:31
Titel:
|
|
Hallo,
eine etwas einfacher gestrickte Variante:
Titus
|
|
|
derOli |
Forum-Meister
|
|
Beiträge: 579
|
|
|
|
Anmeldedatum: 19.03.08
|
|
|
|
Wohnort: Leipzig
|
|
|
|
Version: 2010a
|
|
|
|
|
|
Verfasst am: 18.08.2009, 14:39
Titel:
|
|
Hallo,
schön, dass ihr beiden wieder aktiver seid, da kann ich auch mal wieder was dazulernen.
Viele Grüße,
der Oli
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
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.
|
|