|
|
Zeilenausgabe, an den Stellen an den Matrizen identisch sind |
|
Shanox |
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 15.08.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.08.2018, 16:24
Titel: Zeilenausgabe, an den Stellen an den Matrizen identisch sind
|
|
|
|
|
Hallo zusammen,
ich habe eine Matrix mit dem Namen Suchmatrix und eine Matrix A. Die Suchmatrix hat 2 Spalten und 3303 Zeilen. Die Matrix A hat 3 Spalten und 4400 Zeilen.
Ausschnitt von Suchmatrix:
Ausschnitt von A:
Ich möchte jetzt die Matrix A daraufhin überprüfen, ob die Zeilen 1-3303 der Suchmatrix in der Matrix A vorhanden sind. Wenn dies der Fall ist, möchte ich die Nummer der Zeile von A wissen.
Beispiel:
-1. Zeile der Suchmatrix wird aufgerufen
-es wird überprüft in welchen Zeilen die Suchmatrix identisch mit der 1. und 2. Spalte der Matrix A ist
-die Nummer der Zeile von Matrix A wird ausgegeben
-2. Zeile der Suchmatrix wird aufgerufen
-usw...
Ich habe versucht das Problem über eine for-Schleife und den find-Befehl zu lösen.
Die Ausgabe soll so aussehen:
Die Kombination 55, 0 (Zeile z aus Suchmatrix), kommt in A in den Zeilen 724, 762, 845, 1555... vor.
Der Code funktioniert auch soweit und liefert mir für einige Zeilen richtige Ergebnisse. Leider werden mir nicht alle Zeilen ausgegeben. Wenn ich mir "von Hand" eine Zeile in A aussuche, mir die Zeilennummer merke und in der Ausgabe bei der entsprechenden Kombination von tmp7 und tmp8 nachschaue, finde ich diese Zeile dort meist nicht.
Schaue ich mir jedoch "andersrum" eine Zeile in der Ausgabe an, merke mir die Kombination aus tmp7 und tmp8 und suche dann in der Matrix A danach, stelle ich fest, dass mir die Ausgabe die richtige Zeilennummer genannt hat.
Ich hoffe mein Problem ist ausreichend beschrieben und ihr könnt mir helfen. Nehmt bitte Rücksicht, bin Matlab Anfänger
Grüße und im Voraus Dankeschööön,
Shanox
|
|
|
|
|
Shanox |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 15.08.18
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.08.2018, 16:52
Titel:
|
|
Ich konnte das Problem lösen, indem ich im find-Befehl nicht ==, sondern einen Bereich mit > und < verwendet habe. Warum dies mein Problem gelöst hat weiß ich zwar nicht, aber jetzt funtkionierts.
Danke, wenn sich trotzdem jemand die Mühe gemacht hat alles zu lesen
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 17.08.2018, 16:58
Titel:
|
|
Hallo,
bitte bei der Wahl der Beispiele auf die Sinnhaftigkeit achten. Die Suchmatrix und A haben doch gar nichts gemeinsam?
Das im zweiten Beitrag genannte Problem kann entstehen, wenn die Zahlen in einer der Matrizen durch Berechnungen entstanden sind. Dabei kann es durch das Binärsystem minimale Ungenauigkeiten geben, z.B.
Im übrigen sollte sich das ganze mit ismembertol lösen lassen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
|
|
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.
|
|