|
|
Unterschiedliche Anzahl von Werten in eine Matrix |
|
retsam |

Forum-Century
|
 |
Beiträge: 112
|
 |
|
 |
Anmeldedatum: 23.09.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.02.2014, 10:50
Titel: Unterschiedliche Anzahl von Werten in eine Matrix
|
 |
Hallo zusammen,
ich habe schon versucht eine Lösung zu finden jedoch sitzte ich gerade daran, dass ich mehrere Ergebnisse habe und diese gern in einer Tabelle zusammenfügen möchte.
Nach dem Durchlaufen einer Schleife erhalte ich folgendes in einen weiteren Vektor.
[code]
Vektor b = [1,2]
Vektor b1 = [1,2]
[code]
Ich würde gerne sowohl Vektor a wie auch b in einer Tabelle Zeilenweise untereinander Schreiben, so dass folgende Matrix entsteht:
1,2,3,4,5
1,2,3,4,5
1,2
1,2
.....
Ist das möglich? Ich habe schon versucht über VertCat, Cat... ich vermute aber, dass bedingt durch die unterschiedlichen Anzahl der Stellen dies nicht möglich ist oder Irre ich mich da?
Greetz und Danke
Ret
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 26.02.2014, 12:07
Titel:
|
 |
Hallo,
was Matrizen angeht, liegst du richtig. Du kannst das höchstens mit einem Cell Array machen.
Grüße,
Harald
|
|
|
retsam |
Themenstarter

Forum-Century
|
 |
Beiträge: 112
|
 |
|
 |
Anmeldedatum: 23.09.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.02.2014, 12:29
Titel:
|
 |
Hallo Harald,
vielen dank für die schnelle Antwort.
Wenn ich nun einen Cell Array mit vielen "Spalten" habe, sieht dieser wie folgt aus:
Für jeden Array habe ich einen Zähler vor die Werte gesetzt... (1,2,3,4...)
Wie bekomme ich es nun hin, dass ich die Zelle 1,1 der beiden CellArrays 1 und 2 zusammen füge und in eine gemeinsame Matrix speicher sowie die größe des Cellarrays heraus bekomme.
Danke & Greetz
|
|
|
Nras |

Forum-Meister
|
 |
Beiträge: 608
|
 |
|
 |
Anmeldedatum: 21.02.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: 7.12.0.635 (R2011a)
|
 |
|
|
 |
|
Verfasst am: 26.02.2014, 13:00
Titel:
|
 |
Hallo,
retsam hat Folgendes geschrieben: |
Wie bekomme ich es nun hin, dass ich die Zelle 1,1 der beiden CellArrays 1 und 2 zusammen füge und in eine gemeinsame Matrix speicher |
Das geht zum Beispiel so:
retsam hat Folgendes geschrieben: |
sowie die größe des Cellarrays heraus bekomme. |
Da bin ich mir nicht sicher, was du meinst. Die Größe eines Cellarrays kriegst du ganz normal mit
,
falls du aber die Größe der einzelnen Einträge in deiner cell meinst, die kriegst du beispielsweise mit
Viele Grüße,
Nras.
|
|
|
retsam |
Themenstarter

Forum-Century
|
 |
Beiträge: 112
|
 |
|
 |
Anmeldedatum: 23.09.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.02.2014, 14:43
Titel:
|
 |
Hallo,
super vielen lieben Dank.
Nun habe ich dennoch einen kleinen "Denkfehler".
Es liegt folgender Fall vor:
Eine Tabelle:
1,2,3,4,5,6,7
2,3,4,5,6,7,8
5,6,7,7,7,7,7
Im Array1 (A1) liegt ein Zeilen Vektor der Form
Ich würde gern die Werte miteinander vergleichen um gemeinsame Werte in eine Tabelle als Positionsdaten aufzunehmen.
Gibt es eine einfache Lösung oder geht dies nur über eine Schleife mit jeweiligem Auslesen der Werte im jeweiligen Array.?
Greetz
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 26.02.2014, 15:56
Titel:
|
 |
Hallo,
dafür kannst du intersect (ggf. mit 3 Rückgabeargumenten) verwenden.
Grüße,
Harald
|
|
|
retsam |
Themenstarter

Forum-Century
|
 |
Beiträge: 112
|
 |
|
 |
Anmeldedatum: 23.09.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.02.2014, 10:22
Titel:
|
 |
Guten Morgen,
vielen lieben Dank fr die Hilfe.
Leider habe ich nun noch ein Problem.
Ich versuche gerade einen ausgelesenen Array mit einem Positionswert zu versehen. Dazu würde ich gern folgendes verwenden.
J wäre der Wert, welcghe die Position angibt.
Leider bekomme ich einen Fehler.
Jemand eine Lösung?
Danke und Greetz
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 27.02.2014, 10:35
Titel:
|
 |
Hallo,
was ist XPos, was ist CellArray, und vor allem: was ist die Fehlermeldung?
Bitte immer die Fehlermeldung angeben!
ist keine gültige MATLAB-Syntax, und mir ist schleierhaft, was es bedeuten soll.
Grüße,
Harald
|
|
|
retsam |
Themenstarter

Forum-Century
|
 |
Beiträge: 112
|
 |
|
 |
Anmeldedatum: 23.09.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.02.2014, 10:51
Titel:
|
 |
Guten Morgen
und danke für die schnelle Rückmeldung.
Ich habe in den Arrays Positionsdaten diese würde ich gerne mit einem Index versehen.
CellArray3 hat den Wert 3 die Variable j hat den Wert 1
Ich möchte das CellArray3 dann wie folgt ausschaut:
1.3 (als Wert) um diesen hinterher mit anderen Werten zu vergleichen.
Bei folgendem Befehl kommt die Fehlermeldung"Unexpected Matlab Expression"
Danke und Greetz
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 27.02.2014, 11:18
Titel:
|
 |
Hallo,
in deinem Beispiel ist CellArray3 also kein Cell Array, was eher verwirrend ist.
Das Vorhaben wirkt auf mich etwas merkwürdig. Ginge das?
Grüße,
Harald
|
|
|
retsam |
Themenstarter

Forum-Century
|
 |
Beiträge: 112
|
 |
|
 |
Anmeldedatum: 23.09.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.02.2014, 11:25
Titel:
|
 |
Hallo Harald,
entschuldige bitte, jedoch habe ich dies schon versucht.
Bedingt durch die Größe der Matrix ist diese Lösung nicht sehr praktikabel, da ich auch Werte erhalte >100 und es wichtig ist den Index zu erhalten um anhand diesem hinterher Werte miteinander zu vergleichen.
Ich durchsuche die Matrix einmal in x- und einmal in y-Richtung. Dabei habe ich aber unterschiedliche Zählrichtungen und würde diese gern vereinheitlichen. x zählt Zeilenweise, y zählt Spaltenweise. Um nun gleich Zellen wieder zu finden versuche ich diese mit einem Index für die jeweilige Spalte zu versehen.
Ich hoffe meine Problemstellung ist verständlich genug.
Vielen lieben Dank für die schnelle Hilfe..
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 27.02.2014, 12:32
Titel:
|
 |
Hallo,
Zitat: |
Bedingt durch die Größe der Matrix ist diese Lösung nicht sehr praktikabel, da ich auch Werte erhalte >100 und es wichtig ist den Index zu erhalten um anhand diesem hinterher Werte miteinander zu vergleichen. |
Das verstehe ich nicht. Bitte ein konkretes Beispiel.
Zitat: |
Ich hoffe meine Problemstellung ist verständlich genug. |
Leider mir zumindest nicht.
Zitat: |
Ich durchsuche die Matrix einmal in x- und einmal in y-Richtung. Dabei habe ich aber unterschiedliche Zählrichtungen und würde diese gern vereinheitlichen. x zählt Zeilenweise, y zählt Spaltenweise. Um nun gleich Zellen wieder zu finden versuche ich diese mit einem Index für die jeweilige Spalte zu versehen. |
Auch hierfür bitte ein konkretes Beispiel. Warum müssen die beiden Indizes unbedingt zu einem Wert zusammengefasst werden?
Grüße,
Harald
|
|
|
retsam |
Themenstarter

Forum-Century
|
 |
Beiträge: 112
|
 |
|
 |
Anmeldedatum: 23.09.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.02.2014, 13:47
Titel:
|
 |
Hallo und vielen Dank,
also ich habe folgende Matrix
Die einzelnen Werte werden einmal in X-Richtung (Zeilenweise) voneinander subtrahiert sowie in Y-Richtung (Spaltenweise).
Oben links in der Ecke ist meine Zeile 1, Spalte 1.
Durch weitere Berechnungen muss ich diese transponieren wodurch die Spalten / Zeilen Nummerierung vertauscht wird.
Für x (Zeilenweise)
1.1 2.1 3.1
1.2 2.2 3.2
1.3 2.3 3.3
.......
Für y (Spaltenweise)
1.1 1.2 1.3
2.1 2.2 2.3
3.1 3.2 3.3
......
Um nun die Matrizen zu indizieren würde ich gern Punkte zwischen den einzelnen Werten haben, denn sobald die Matrix größer wird, wäre durch eine Trennung mit Punkte einfach und übersichtlicher.
Vielen Dank und ein schönes Wochenende.
Greetz
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 28.02.2014, 13:58
Titel:
|
 |
Hallo,
und was haben x und y nun mit der ursprünglichen Matrix zu tun bzw. wie ergeben sie sich daraus?
Wenn es nur um die Erstellung solcher Matrizen geht:
Grüße,
Harald
|
|
|
retsam |
Themenstarter

Forum-Century
|
 |
Beiträge: 112
|
 |
|
 |
Anmeldedatum: 23.09.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 04.03.2014, 11:21
Titel:
|
 |
Guten Morgen,
das sind die jeweiligen Spalten mit den dazugehörigen Zeilen.
Vielen lieben Dank für die Rückmeldung.
Zur Sicherheit habe ich noch eine Überprüfungsmatrix eingefügt. In dieser wird an der jeweiligen Stelle eine 1 gesetzt (für x, y Ausrichtung) und beide Matrizen werden miteinander im Anschluss verglichen.
Greetz und vielen Dank
Ret
|
|
|
|
|
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.
|
|