|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.08.2011, 20:36
Titel: Matrix"mischung"
|
 |
Hallo allerseits,
ich arbeite mich derzeit in Matlab ein. Soweit klappt auch vieles, allerdings habe ich jetzt eine Frage, welche Expertren wohl langweilen wird.
Ich habe
Matrix a
Matrix b
Matrix c(12 verschiedene, also c1 -c12)
Matrix b wird in a 12x ausgeführt. Funktioniert einwandfrei, wie ich es will. Bis hier hin also kein Problem
Nun habe ich Matrix c 12 mal. Alle gleich groß nur verschiedener Inhalt. Ich will, dass die matrizen c1 - c12 durchgemixt werden, also nicht mehr in einer Reihenfolge sind.
Ich hoffe es ist möglich mit meinen Ausführungen etwas anzufangen.
Viele Grüße
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 26.08.2011, 20:49
Titel:
|
 |
Hallo,
das sieht man mal wieder, warum viele User inkl. mir empfehlen, von solchen Variablenlisten Abstand zu nehmen. Steck die Variablen doch in ein Cell Array:
(natürlich schon bei der Erzeugung)
Dann kannst du das ganz einfach machen:
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.08.2011, 21:05
Titel:
|
 |
Harald hat Folgendes geschrieben: |
Hallo,
das sieht man mal wieder, warum viele User inkl. mir empfehlen, von solchen Variablenlisten Abstand zu nehmen. Steck die Variablen doch in ein Cell Array:
(natürlich schon bei der Erzeugung)
Dann kannst du das ganz einfach machen:
Grüße,
Harald |
Danke für die schnelle Antwort!
Also sähe das dann innerhalb von b ca so aus:
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 26.08.2011, 22:43
Titel:
|
 |
Hallo,
bzw. gleich
oder
Grüße,
Harald
P.S.: Du hast am Anfang "Matrix B" geschrieben. Du meinst aber anscheinend eine Funktion.
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.08.2011, 23:01
Titel:
|
 |
Ja, diese Funktion soll eine Matrix zusammenstellen, indem sie die 12 verschiedenen "c-Matrizen" durcheinanderwürfelt und aneinander hängt.
Jede der c-Matrizen hat 10 Zeilen.
Könnte dann z.B. So aussehen:
Matrix b beinhaltet
c4
c11
c1
c2
c7
c12
c3
c2
c9
c6
c4
c5
und hat somit dann 120 Zeilen (jedes c liefert ja 10 Zeilen).
In Funktion a (bildet die endgültige Matrix) wird die mittlere mittlere Matrix (b) 12x hintereinander ausgeführt. Das funktioniert auch schon vom code her. So stehen am ende dann 1440 Zeilen.
Ich will quasi nur die kleinesten c-Matrizen anstatt in einer 1-12er Reihenfolge immer neu durcheinander mischen lassen. Ohne, dass sich die Reihenfolgen innerhalb der c-Matrizen ändert.
Danke für deine Geduld Harald!
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 27.08.2011, 00:13
Titel:
|
 |
Ist da nun noch eine Frage? Wenn ja, verstehe ich sie nicht.
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.08.2011, 11:18
Titel:
|
 |
|
 |
|
Harald hat Folgendes geschrieben: |
Ist da nun noch eine Frage? Wenn ja, verstehe ich sie nicht.
Grüße,
Harald |
Ich glaube, dass ich mich selber etwas verwirrt habe. Bin noch eher am Anfang.
Innerhalb der Funktion B welche eine Matrix erzeugen soll, möchte ich, dass eine Spalte zufällig aus 12 Elementen zusammen gestellt werden soll (C). C sieht wie folgt aus:
c1 = [1 1 3 4 2 3 1 2 4 4]';
c2 = [3 1 3 4 2 1 3 2 4 2]';
c3 = [1 3 1 2 4 1 3 4 2 2]';
c4 = [1 3 1 4 2 3 1 4 2 4]';
c5 = [3 1 1 2 4 1 3 2 4 4]';
c6 = [1 3 3 4 2 1 3 4 2 2]';
c7 = [1 1 3 4 2 3 1 2 4 4]';
c8 = [3 1 3 4 2 1 3 2 4 2]';
c9 = [1 3 1 2 4 1 3 4 2 2]';
c10 = [1 3 1 4 2 3 1 4 2 4]';
c11 = [3 1 1 2 4 1 3 2 4 4]';
c12 = [1 3 3 4 2 1 3 4 2 2]';
Und diese C sollen aber nicht nur von 1:12 gezeigt werden. Sondern durchgemixt.
Dodass die 120 lange Spalten dann unter anderem so aussehen kann:
c4
c11
c1
c2
c7
c12
c3
c2
c9
c6
c8
c5
Hoffe, dass meine Ausführungen jetzt etwas besser oder verständlicher sind. Habe gemerkt, dass es oben etwas schwammig bzw. unkonkret war.
|
|
|
MatLabNooB |

Forum-Guru
|
 |
Beiträge: 262
|
 |
|
 |
Anmeldedatum: 27.03.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.08.2011, 16:29
Titel:
|
 |
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 27.08.2011, 18:14
Titel:
|
 |
Zum obigen Vorschlag:
da die Matrixteile ja untereinander sollen, sollte VERTCAT statt HORZCAT verwendet werden.
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.08.2011, 18:23
Titel:
|
 |
Harald hat Folgendes geschrieben: |
Zum obigen Vorschlag:
da die Matrixteile ja untereinander sollen, sollte VERTCAT statt HORZCAT verwendet werden.
Grüße,
Harald |
Genau es sollen die Zeilen von C untereinander sodass es 120 Zeilen hat.
Danke an euch beide und beste Grüße
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.08.2011, 18:26
Titel:
|
 |
Das mit I in Abhängigkeit von ... habe ich nicht verstanden. Wäre es möglich Haralds Vorschlag zu nutzen der so war?
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 28.08.2011, 18:46
Titel:
|
 |
Hallo,
du kannst die Vorschläge quasi so kombinieren, wie du willst.
Wenn sich die einzelnen Matrizen automatisiert generieren lassen, wäre die Variante mit I eben übersichtlicher.
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.08.2011, 10:57
Titel:
|
 |
Harald hat Folgendes geschrieben: |
Hallo,
du kannst die Vorschläge quasi so kombinieren, wie du willst.
Wenn sich die einzelnen Matrizen automatisiert generieren lassen, wäre die Variante mit I eben übersichtlicher.
Grüße,
Harald |
Ok, ich werde dann erstmal das ohne I versuchen, damit komme ich denke ich rerstmal zum Testen besser klar.
Es ist ausgeschlossen, dass sich innerhalb der einzelnen c (x) etwas an der Reihenfolge ändert, oder? Das einzige, was variieren wird wird ist die Abfolge der c (x) in der gesamten c?
|
|
|
|
|
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.
|
|