|
|
Doppelte Einträge in Array entfernen |
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.01.2014, 15:44
Titel: Doppelte Einträge in Array entfernen
|
 |
Hi,
ich habe eine n-n-Matrix aus der ich die Positionen der Zellen suche in jenen der Inhalt ungleich 0 ist. Die Diagonalemente z.B: Matrix(1,1) oder Matrix (12,12) sind stets besetzt aber irrelevant. Existiert eine Zahl in Matrix(1,4) so existiert dieselbe ebenso in Matrix(4,1).
Die Positionen bekomme ich folgendermaßen raus:
Die Positionen der Diagonalemente filtere ich wie folgt raus (da irrelevant):
Das Ergebnis sieht wie folgt aus:
[1,2; 2,3; 4,9; 2,1; 3,2; 9,4]
Problem ist, dass mein Ergebnis wie folgt aussehen sollte:
[1,2; 2,3; 4,9]
>> Die Kombination "1-2" ist gleich "2-1" - ich benötige nur eine davon.
Kann man meine Frage verstehen? Gibt es einen weg die "doppelten" bzw. unnötigen Zeilen der Matrix zu entfernen?
|
|
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.01.2014, 20:48
Titel:
|
 |
Mit dieser Erweiterung des bereits oben aufgeführten Codes hat es geklappt:
Gibt es einen kürzeren / einfacheren / sauberen Weg?
Würde mich sehr darüber freuen.
Ich habe die Matrix, um die es geht, angehangen.
Beschreibung: |
|
 Download |
Dateiname: |
Y_Basis.zip |
Dateigröße: |
2.06 KB |
Heruntergeladen: |
238 mal |
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 18.01.2014, 21:33
Titel:
|
 |
du könntest
benutzen um gleich nur die obere dreiecksmatrix zu untersuchen.
_________________
richtig Fragen
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.01.2014, 21:53
Titel: Der Hammer
|
 |
Wow Danke! Mit:
Ist die Sache ja bereits gelöst und dazu auch noch ziemlich kompakt!
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.01.2014, 22:15
Titel:
|
 |
In der Tat eine coole Funktion. Mit triu(x,1) kann man die zweite Zeile des Codes weglassen.
|
|
|
|
|
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 - 2025
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.
|
|