Load multiple struct 1x1 mat files

2 visualizaciones (últimos 30 días)
Beatrice Milik
Beatrice Milik el 23 de Abr. de 2019
Editada: Stephen23 el 23 de Abr. de 2019
Hey guys!
I am having trouble when trying to load several mat files which consist of RMN images. The files are struct 1x1 and if I try to create a loop for loading files, Matlab loads only the first image in the variable named cjdata.
Has anyone else had this problem and found a solution?
Thanks!
filenames={'1550.mat','1549.mat','1548.mat','1547.mat','1546.mat','1545.mat','1544.mat',...
'1543.mat','1542.mat','1541.mat'};
for kk = 1:numel(filenames)
load(filenames{kk})
end
  2 comentarios
Stephen23
Stephen23 el 23 de Abr. de 2019
Editada: Stephen23 el 23 de Abr. de 2019
Beatrice Milik please show us the code you are using, either as text in your question or uploaded as a text file (simply by clicking the paperclip button).
"Has anyone else had this problem and found a solution?"
Most likely you just need to use indexing, exactly like the examples here:
Beatrice Milik
Beatrice Milik el 23 de Abr. de 2019

Iniciar sesión para comentar.

Respuesta aceptada

Stephen23
Stephen23 el 23 de Abr. de 2019
Editada: Stephen23 el 23 de Abr. de 2019
It is recommended to load into an output variable, rather than directly into the workspace. doing so also makes your task simpler and easier to understand:
V = 1550:-1:1541;
N = numel(V);
C = cell(1,N);
for kk = 1:N
F = sprintf('%d.mat',V(kk));
S = load(F);
C{kk} = S.cjdata;
end
All of the image data will be in the cell array C.
You can easily adapt this to suit your exact variable class and size: or if this code does not work and you want more help then please upload a sample file.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by