habe ein Problem mit folgender Schleife inkl. eingebauter If Abfrage.
der code produziert eine endlosschleife. ich bin relativ neu in matlab und finde den fehler nicht. evtl. sind auch einige kommas oder sowas einfach falsch gesetzt.
Hier der code: Zur Info: Mittelwert u renditen sind Matrizen.
Wie gross sind die Matrizen die du untersuchen möchtest und welche Matlabversion besitzt du?
Also erstmal solltest du die Ausgabe der if-Abfrage durch ein Semikolon unterdrücken. Desweiteren ist bei mir der Name "Window" mit einem matlabinternen analyse-programm verknüpft deswegen solltest du diese Bezeichnung für eine Variable vll vermeiden. Ich habs jetzt nicht weiter getestet und auch nicht versucht zu vektorisieren etc. aber hier meine gemachten vorschläge für deine Monsterabfrage.
Da kann man sicher noch einiges in puncto Effizienz herausholen.
Selbst wenn man nicht vektorisiert, sollte man zumindest nanstd(renditen(:,i)) so selten wie möglich [d.h. vor der inneren FOR-Schleife] berechnen, in einer Variable speichern und wiederverwenden.
AL
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 08.06.2009, 10:22
Titel:
Hallo !
Die Matrizen haben die Größe 21698x37
Muss das Komma zwischen der Bedingung und der Aussage tatsächlich ganz weg? Oder gibt es da noch einen unterschied, je nachdem ob ELSEIF oder ELSE verwendet wird.....
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
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.