WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Sortier/Lösch Problem

 

Neu

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.02.2013, 22:32     Titel: Sortier/Lösch Problem
  Antworten mit Zitat      
Hallo Community,

ich habe folgendes Problem:

1.Schritt: Aus einer nx3-Matrix doppelte Zeilen löschen (unique Befehl).
2. Schritt: Einige Berechnungen verändern die dritte Spalte meiner Matrix
3 Schritt: Nun möchte ich die ursprünglich mehrfach vorhandenen Zeilen wiederherstellen/einfügen. Dies soll so geschehen, dass nun die gleichen Zeilen wieder mehrfach vorhanden sind, wobei sich zur Ausgangsmatrix lediglich die Dritte Spalte geändert hat.

Beispiel

1 2 3 Löschen=>1 2 3 Schritt 2=> 1 2 99 Schritt3=>1 2 99
4 5 6 4 5 6 4 5 878 4 5 878
1 2 3 1 2 99

Vielen Dank für eure Hilfe!!


Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.02.2013, 22:37     Titel:
  Antworten mit Zitat      
Sorry das Bsp ist verutscht
 
Seban
Forum-Meister

Forum-Meister


Beiträge: 600
Anmeldedatum: 19.01.12
Wohnort: ---
Version: ab R2014b
     Beitrag Verfasst am: 12.02.2013, 23:56     Titel:
  Antworten mit Zitat      
Hi,

Warum möchtest du denn Zeilen entfernen, nur um diese dann wieder einzufügen? Wenn du die Berechnungen direkt auf den Ausgangsvektor anwendest, erhältst du doch den Zielvektor?

So funktioniert es jedenfalls:
Code:
A = [1 2 3; 4 5 6; 1 2 3; 7 8 9; 7 8 9];
[B, ia, ib] = unique(A, 'rows');
C = [B(:, 1:2) B(:, 3) .* 33];
D = C(ib, :);


Grüße
_________________

Richtig fragen
Debugging
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.02.2013, 09:32     Titel:
  Antworten mit Zitat      
nein das ist leider nicht möglich, da dann ganz andere Ergebniss rauskommen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.02.2013, 09:55     Titel:
  Antworten mit Zitat      
Ich danke dir es funktioniert, auch wenn ich den Code noch nicht ganz verstanden habe.
 
Seban
Forum-Meister

Forum-Meister


Beiträge: 600
Anmeldedatum: 19.01.12
Wohnort: ---
Version: ab R2014b
     Beitrag Verfasst am: 13.02.2013, 19:04     Titel:
  Antworten mit Zitat      
Anonymous hat Folgendes geschrieben:
(...) auch wenn ich den Code noch nicht ganz verstanden habe.

Was denn nicht bzw. welche Zeilen?

Aus der Hilfe zu unique:
Zitat:
[C,ia,ic] = unique(A,'rows') also returns index vectors ia and ic such that C = A(ia,: ) and A = C(ic,: ).


Du kannst das Bsp auch einfach mal debuggen und dir Zeile für Zeile anschauen, was passiert.
http://www.mathworks.de/de/help/mat.....process-and-features.html

Grüße,
Seban
_________________

Richtig fragen
Debugging
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.