Verfasst am: 16.09.2013, 10:57
Titel: Cell-Arrey: Arreys nach Größe sortieren
Hallo ,
ich habe ein 1 mal x Cell-Arrey. Jedes Arrey hat x mal 30 spalten. Ich möchte Cell-Arrey jetzt so ordnen das das größte Arrey an Position 1,1 steht. Das nächst große an Position 1,2 usw.
Dafür habe ich folgenden code der soweit auch recht zuverlässig funktioniert. Mit einer Ausnahme. Wenn 2 Arreys gleich groß (gleich viele Zeilen) sind versagt der code. Kommt bei mir zwar recht selten vor, aber das dumme ist es kommt halt vor.
Code:
Z=zeros(1,LC);
for wert = 1:LC
[kk ll]=size(gruppenl{wert});
Z(wert)=kk;
end
GRUPPEN={LC};
Z1=sort(Z,'descend'); % sortiert absteigend (normalerweise aufsteigend) for neu=1:LC
for grneu=Z(1,neu)
ga=find(Z'==grneu);
ge=find(Z1'==grneu);
GRUPPEN{ge}=gruppenl{ga};
end end
Wie kann ich den Code umschreiben das das immer funktioniert. Oder gibt es vielleicht einen einfacheren code (vielleicht nur eine Zeile) um ein Cell-Arrey zu sortieren. Ich weiß einfach nicht wie ich diesen Fall der zwei gleich großen Arreys abfangen kann.
Jedoch musste ich es etwas umschreiben da mein Matlb mit dem ~ nicht klar kam.
bei alten matlab versionen geht das auslassungs zeichen nicht. da muss man dann halt speicher mit ner variablen verschwenden die man nicht brauch.
_________________
Jedoch musste ich es etwas umschreiben da mein Matlb mit dem ~ nicht klar kam.
Wenn du dich anmelden würdest und die verwendete Version eintragen oder sie auch nur in deinen Beiträgen nennen würdest, könnte man auch berücksichtigen :)
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.