Quantcast
Channel: Mein MATLAB Forum - goMatlab.de
Viewing all articles
Browse latest Browse all 28441

geschachtelte structs in cell umwandeln

$
0
0
Hallo, ich habe mehrer .mat-Files welche jeweils u.a. mehere k x 1 structs haben. Diese structs haben (teilweise) als fields wiederum j x 1 structs. Also zum Beispiel: Messdaten.mat --> Monatsleistung --> Monatsleistung.Jahr2013 --> Monatsleistung.Jahr.2013.Monat04 Jetzt würde ich gerne alles structs in cells umwandel, damit ich einfach per Indizierung drauf zugreifen kann (Will für jedes struct ein script zum einlesen erstellen). Die erste Ebene funktioniert noch, aber bei der 2. gehts nicht mehr: for k=1:length(b) for j=1:length(b{k,1}) if isstruct(b{k, 1}{j, 1})==1 b{k,1}{j,1}=struct2cell(b{k,1}{j,1}); end end end In b hab ich das entsprechende mat-file geladen. b{k, 1}{j, 1} sind die fields "auf 2. Ebene". b{k,1} sind schon umgewandelte cells. Folgende Fehlermeldung kommt: Cell contents reference from a non-cell array object. Error in Skript3 (line 8) if isstruct(b{k, 1}{j, 1})==1 Wenn ich aber die isstruct-abfrage für ein entsprechendes struct per Hand ausführe, kommt wie zu erwarten eine 1 raus. Wieso geht das aber dann nicht im Skript? PS: Ziel des ganzen ist es, dann für alle Messwerte jeweils nach Jahr, Monat oder Tagesmesswerten sortiert ein Skript zu erstellen,welches die gewünschten Messwerte in Matlab lädt und mann dann sofort das schon erstellte fft-skript ausführen kann. Vielen Dank schonmal!

Viewing all articles
Browse latest Browse all 28441

Latest Images