|
|
Problem bei NaN, "Out of Memory" |
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.09.2014, 15:27
Titel: Problem bei NaN, "Out of Memory"
|
 |
|
 |
|
Hallo an alle,
ich habe das Forum durchstöbert aber keine richtige Antwort darauf gefunden. Mein Programm ist insgesamt viel Größer m=80 und n=251 sowie M(m,n,26) allerdings funktioniert dieser unten angegebene Code dann nicht mehr und die Fehlermeldung: "Out of Memory" Error using NaN tritt auf.
Meine Frage woran liegt es bzw. kann man es durch eine geschickter Programmierung verhindern?
Vielen Lieben Dank für eure Zeit.
Gruß
clear all
a=[5,6,2,9,3,7,10,1,4,5,9,2,6,7;1,1,1,9,1,1,1,1,1,1,9,1,1,1;4,8,3,9,6,1,7,4,4,4,9,4,4,4];
b=[3,0,7;4,6,0;5,4,2];
bereich=2;
m=3;
n=2*bereich+1;
Matrix3D=zeros(m,n,3);
for o=1:3
for h = 1:m
if (b(h,o)>2)
Matrix3D(h,:,o) = a(h,(b(h,o)-bereich) b(h,o)+bereich));
elseif (b(h,o)>0)
Matrix3D(h,:,o) = [NaN(1:bereich+1-b(h,o)),a(h,1 b(h,o)+bereich))];
else
Matrix3D(h,:,o) = NaN;
end
end
end
OIU=Matrix3D
%Erstellen der kumulierten Renditen aller Aktien über die jeweiligen Jahre
KumMatrix=zeros(m,n+1,3);
for o=1:3
for z=1:m
KumMatrix(z,:,o)=[fliplr(cumsum(fliplr(Matrix3D(z,1:bereich+1,o)))),cumsum(Matrix3D(z,bereich+1:n,o))];
end
end
KumMatrix(:,bereich+1, =[];
UIZ=KumMatrix
mitteldim3= nanmean(KumMatrix,3)
mitteldim1= nanmean(mitteldim3,1)
|
|
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.09.2014, 15:31
Titel:
|
 |
Den Code nocheinmal ohne Smilies
for o=1:3
for h = 1:m
if (b(h,o)>2)
Matrix3D(h,:,o) = a(h,(b (h ,o)-bereich) : (b(h,o)+bereich));
elseif (b(h,o)>0)
Matrix3D(h,:,o) = [NaN(1:bereich+1-b(h,o)),a(h,1 ( b(h,o)+bereich))];
else
Matrix3D(h,:,o) = NaN;
end
end
end
OIU=Matrix3D
%Erstellen der kumulierten Renditen aller Aktien über die jeweiligen Jahre
KumMatrix=zeros(m,n+1,3);
for o=1:3
for z=1:m
KumMatrix(z,:,o)=[fliplr(cumsum(fliplr(Matrix3D(z,1:bereich+1,o)))),cumsum(Matrix3D(z,bereich+1:n,o))];
end
end
KumMatrix(:,bereich+1, : ) =[];
UIZ=KumMatrix
mitteldim3= nanmean(KumMatrix,3)
mitteldim1= nanmean(mitteldim3,1)
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.499
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 03.09.2014, 16:09
Titel:
|
 |
Hallo,
mit
wird eine quadratische Matrix erstellt. Du willst aber wohl einen Vektor, musst also wohl
verwenden.
Wenn du die Codeumgebung verwendest, musst du nicht wegen den Smileys aufpassen.
Grüße,
Harald
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 03.09.2014, 19:36
Titel:
|
 |
Ach super, vielen Dank für die Hilfe. Ich mach schon so lange an dem Problem rum das ich wohl den Überblick verloren hatte.
Gruß
|
|
|
|
|
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.
|
|