|
Aidin |
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 04.10.12
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 07.01.2016, 13:38
Titel: Matrixen
|
|
hallo Leute,
ich habe eine recht einfache Frage,
Ich habe ein 20x1 Matrix die von 1 bis 20 geht. "Matriz a"
und eine Matrix b=[1 2]';
nun will ich dass ich einen Funktion schreiben um einen Matrix c zu erstellen die so groß ist wie a und die werte von b beinhaltet also von 10 mal die erst 1 und 10 mal die wert 2 und diese dann als 2 spalte in matrix a einträgt. so dass die matrix a zu 20x2 wird.
danke
|
|
|
|
|
ro_mat |
Forum-Century
|
|
Beiträge: 158
|
|
|
|
Anmeldedatum: 20.10.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 07.01.2016, 14:04
Titel:
|
|
Also - ich hoffe ich verstehe dich richtig:
|
|
|
ro_mat |
Forum-Century
|
|
Beiträge: 158
|
|
|
|
Anmeldedatum: 20.10.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 07.01.2016, 14:11
Titel:
|
|
Ahhh - jetz hab ich dich glaub ich verstanden:
|
|
|
Aidin |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 04.10.12
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 07.01.2016, 14:34
Titel:
|
|
Hallo Ro_mat
also das ist genau richtig was du das verstanden hast. aber ich bräuchte eh eine Funktion. das sollte nur ein beispiel sein.
mein Hauptproblem ist darin dass ich einen 113725X21 matrix habe und einen 807X1 matrix. Nun will nach oben gefragten prinzib diesen 807X 1 matrix als 22 spalte der großen matrix einfügen. und das geht sehr schwer mit dieser Lösung....
Wäre sehr dankbar wenn du da weiter helfen könntest
Lg
|
|
|
ro_mat |
Forum-Century
|
|
Beiträge: 158
|
|
|
|
Anmeldedatum: 20.10.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 07.01.2016, 14:40
Titel:
|
|
Ja das stimmt, das ist nur schemenhaft ein Beispiel!
Dein Problem ist also, dass deine Matrix die du als 22.Spalte anfügen möchtest, kleiner ist als deine Hauptmatrix!!!
Erklär mir bitte noch mal was in der 22.Spalte an der 808. Stelle stehen muss? Fängt da wieder diese 807*1 Matrix von vorne an?
Oder soll nur die 807*1 Matrix angehängt werden und dann nur mehr Nullen folgen?
[EDITED, Jan, Bitte kein Top-Quoting - Danke!]
|
|
|
Aidin |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 04.10.12
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 07.01.2016, 16:38
Titel:
|
|
|
|
|
Ja das stimmt, das ist nur schemenhaft ein Beispiel!
Dein Problem ist also, dass deine Matrix die du als 22.Spalte anfügen möchtest, kleiner ist als deine Hauptmatrix!!!
Erklär mir bitte noch mal was in der 22.Spalte an der 808. Stelle stehen muss? Fängt da wieder diese 807*1 Matrix von vorne an?
Oder soll nur die 807*1 Matrix angehängt werden und dann nur mehr Nullen folgen?[/quote]
e also es soll wie bei der einfachen Beispiel sein.
Sagen wir der 113725X21 Matrix soll A sein. Und der 807*1 Matrix soll B sein.
Dann soll die ersten x Reihen der 22 Spalte der A Matrix der Zahl der ersten Reihe von B annehmen. Dann die Nächten X Reihen sollen der Zahl der zweite Reihe von B annehmen und so weiter bis alle 113725 Reihen einen Zahl von B Matrix bekommen haben.
Der Zahl X wird von mir angegeben. Zb. die ersten 20 Reihen der A Matrix bekommen den Wert der ersten Reihe von B, dann die Nächten 100 Reihen bekommen den Wert der zweiten Reihe und ....
Ich hoffe ich könnte es gut beschreiben.
Danke dir
[EDITED, Jan, Bitte kein Top-Quoting - Danke!]
|
|
|
ro_mat |
Forum-Century
|
|
Beiträge: 158
|
|
|
|
Anmeldedatum: 20.10.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.01.2016, 08:32
Titel:
|
|
Hallo Aidin,
sry musste gestern dann weg! Hast du das Problem bereits gelöst?
Wenn nicht - kannst du mir nur sagen wie du X bestimmen willst? Soll X von Anfang an für alle Werte bestimmt sein, d.h. du weißt von Beginn an das X-Werte den ersten B-Wert haben, dann X-Werte den zweiten B-Wert haben, usw.!
Wenn das so ist dann wäre X eine Zählvariable mit unterschiedlichen Schritten und einer vorher bestimmten Größe!
Ist das so?
Liebe Grüße
|
|
|
Aidin |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 04.10.12
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.01.2016, 12:32
Titel:
|
|
Hallo ro-mat
Ist natürlich kein Problem.,
ich habe jetzt auf eine nicht so elegante Lösung mein Problem gelöst aber das ist keine dauerhafte lösung.( nimmt sehr viel zeit in Anspruch und ich muss jedes mal vieles neu machen)
Also wie du gesagt hast ist ist X mit bekannt. und das ist eine Variable.
man könnt es sich so vorstellen dass die Messzeiten unterschiedlich sind. ( in Matrix A "113725X21" würde Teilweise in 60s Takt und Teilweise in 1 S Takt die werte Aufgezeichnet. in Matrix B "807X2" würde nur in 10 minuten Takt werte aufgezeichnet.)
nun mussen halt die werde zusammen gefügt werden.
kurz gesagt. ich kenne die X werte und auch die Plätze wo die geändert werden mussen.
aber da sie mehrmals geändert werden, denke ich es macht sinn diese als Variable einzufügen.
|
|
|
ro_mat |
Forum-Century
|
|
Beiträge: 158
|
|
|
|
Anmeldedatum: 20.10.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.01.2016, 12:42
Titel:
|
|
Ja hallo - ja jetzt wirds immer klarer! Nur noch mal mit Zahlenwerten gekürzt:
A = 2 3
4 5
6 7
8 9
B = 1
2
X = 3
1
X besagt das 3 mal der Wert 1 aus B in die dritte Spalte von A kommt und 1 mal der Wert 2 aus B oder?
A wäre dann am Ende
A = 2 3 1
4 5 1
6 7 1
8 9 2
So würde es passen oder?
|
|
|
Aidin |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 04.10.12
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.01.2016, 12:47
Titel:
|
|
Hallo
Ja genau das wäre korrekt.
nur kurze anmerkung was vieleicht noch alles einfacher machen könnte. es bezihet sich auf zeiten. also min. ,sek, ,,
somit sind die wiederholungen viel ofters. zb.hier um x=600 und x= 10. aber am ende ist es genau was du geschrieben hast.
|
|
|
ro_mat |
Forum-Century
|
|
Beiträge: 158
|
|
|
|
Anmeldedatum: 20.10.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.01.2016, 13:42
Titel:
|
|
Hallo, ich hab jetz viel getüftelt und was gefunden das funktioniert - obs die einfachste Variante ist weiß ich auch nicht!!
Ich hab zu Beginn eine Hilfsmatrix erstellt die für jeweils die ersten X-zeiten lang mit dem ersten B-Wert gefüllt wird:
Dann lass ich in einer for-Schleife die restlichen B-Werte zu den X-Zeiten hinzufügen:
Zum Schluss dann C an A anfügen:
Bei meinen Testläufen hats funktioniert schau mal ob es du für deinen Fall anwenden kannst! Ansonsten wieder melden
|
|
|
Aidin |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 15
|
|
|
|
Anmeldedatum: 04.10.12
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.01.2016, 09:49
Titel:
|
|
Hallo ro_mat
Sorry ich war Die Tage nicht hier.
also ich habe jetzt das Problem mit mehreren Funktionen Gelöst. aber deine Lösung hat auch funktioniert. Ich danke dir für deine Hilfe
MFG
|
|
|
|
|
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.
|
|