|
|
Vergleich und Zusammenfügen von Tabellen-Spalten |
|
Ciotic |
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 10.02.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.02.2018, 17:19
Titel: Vergleich und Zusammenfügen von Tabellen-Spalten
|
|
Hallo zusammen,
ich sitze vor folgendem Problem und komme nicht so recht weiter:
Gegeben sind zwei Tabellen
Nun sollen beide Tabellen zu einer Tabelle zusammengefasst werden. Die erste Spalte ist jeweils die Bauteil Bezeichnung. Die letzten 3 Spalten der Tabelle B sollen, wenn das Bauteil übereinstimmt, an die Tabelle A angehängt werden. Das Ergebnis soll also wie folgt aussehen:
Die Reihenfolge, in der die Bauteile auftauchen ist bei beiden Tabellen unterschiedlich. Zudem kann es vorkommen, dass in A ein Bauteil steht, was in B nicht auftaucht. Mein Vorgehen wäre nun, die Tabellen aufsteigend zu sortieren und dann die Tabellen zeilenweise zu vergleich. Nur wie setzte ich das in Matlab um?
Ich bin für jede Hilfe dankbar!
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 10.02.2018, 23:07
Titel:
|
|
Hallo,
in welcher Form sind die Tabellen denn gegeben?
Als Cell Arrays, Tables, ganz was anderes?
ismember
dürfte helfen, und bei Tables gibt es
join
,
innerjoin
und
outerjoin
.
Grüße,
Harald
|
|
|
Ciotic |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 10.02.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.02.2018, 12:55
Titel:
|
|
Hi,
danke für deine Antwort. Die Tabellen sind als Cell Arrays gegeben. Da kann ich aber leicht tables draus machen.
ismember bringt mich leider auch nicht weiter. Über
kann ich zeilenweise prüfen, ob das Bauteil von B auch in der gleichen Zeile von A vorkommt.
Da meine Bauteile aber nicht in den gleichen Zeilen sind, trifft das bei mir leider nie zu.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 11.02.2018, 13:00
Titel:
|
|
Hallo,
wenn, dann schon
oder auch
Und wie gesagt:
Zitat: |
bei Tables gibt es join , innerjoin und outerjoin . |
Grüße,
Harald
|
|
|
Ciotic |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 10.02.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.02.2018, 13:25
Titel:
|
|
Das löst aber mein Problem leider nicht, da die Funktion nur prüft, ob in Zeile n der Wert der Spalte "Bauteil" von Table B mit dem Wert der Spalte "Bauteil" von Tale A übereinstimmt. Bei meinen Tabellen sind die Bauteile aber in verschiedenen Zeilen.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 11.02.2018, 14:47
Titel:
|
|
Hallo,
du brauchst das zweite Rückgabeargument von ismember.
Außerdem musst du wohl die Eingabeargumente vertauschen.
Leichter dürfte eine der join-Varianten sein. Hast du das denn mal versucht?
Grüße,
Harald
|
|
|
Ciotic |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 10.02.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.02.2018, 17:01
Titel:
|
|
Hi,
danke für das Nachhaken, die join Funktionen hatte ich noch nicht versucht.
Dabei hat ein einfaches
mein Problem gelöst. Es kann so einfach sein.
|
|
|
|
|
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.
|
|