WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Variable Anzahl von Matrizen in eine Matrix schreiben

 

Gonsilla
Forum-Newbie

Forum-Newbie


Beiträge: 1
Anmeldedatum: 28.07.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.07.2017, 08:50     Titel: Variable Anzahl von Matrizen in eine Matrix schreiben
  Antworten mit Zitat      
Hallo Community,


ich bin relativ neu in Matlab. Ich hoffe ich finde hier Hilfe für mein Problem, da ich für dieses im Internet keine Antwort finden konnte.

Mein Programm errechnet mir je nach je Anzahl der Eingabeparameter eine unterschiedliche Anzahl an Matrizen mit unterschiedlichem Inhalt. Dabei haben alle Matrizen die gleiche Anzahl an Zeilen (nähmlich 2), jedoch eine unterschiedliche Anzahl an Spalten (zwischen 700 und 2500). Zudem variieren, wie oben erwähnt, die Anzahl der berechnet Matrizen.

Ich suche eine Lösung, wie alle diese Matrizen durch eine Schleife automatisch in einer Matrix hintereinander geschrieben werden. Also dass bsp. aus folgenden 5 Matrizen:

[100,2],[200,2],[300,2],[400,2],[500,2]

eine Matrix mit [1500,2] entsteht.

Folgen Ansatz habe ich verfolgt bis ich bemerkt habe, dass die Anzahl an Matrizen viel zu groß ist und ich so mehr als 1000 Zeilen Code schreiben müsste.

Code:
% Aus unterschiedlich vielen Matrizen eine Gesamtmatrix machen
% N entspricht der Anzahl der errechneten Matrizen
% Die errechneten Matrizen werden jeweils in die fortlaufende Variable y geschieben (also y1, y2, ...)
if (N==1)
    Endmatrix=[y1];
elseif (N==2)
    Endmatrix=[y1,y2];
elseif (N==3)
    Endmatrix=[y1,y2,y3];
elseif (N==4)
    Endmatrix=[y1,y2,y3,y4];
else (N==5)
    Endmatrix=[y1,y2,y3,y4,y5];
end


Vor allem die unterschiedliche Anzahl an Matrizen bereitet mir Probleme.
Vielen Dank für eure Zeit und Hilfe. Bin echt verzweifelt.

Viele Grüße aus Bayern

Andi
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 01.08.2017, 12:07     Titel: Re: Variable Anzahl von Matrizen in eine Matrix schreiben
  Antworten mit Zitat      
Hallo Gonsilla,

Das Porblem ist es, dass Du zunächst einen Haufen von Variablen erzeugst, die einen Index im Namen versteckt haben. Dies ist immer ein Schuss ins Knie, wie Du in hunderten Threads in diesem Forum nachlesen kannst (suche nach "eval" oder "Index verstecken").
Wenn die Matrizen stattdessen als Cell-Array definiert wären:
Code:
yC = {y1, y2, y3, ...};

ist die Verkettung trivial:
Code:
yM = cat(2, y{:});

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.