How do I iterate variable names when loading dicom files?

2 visualizaciones (últimos 30 días)
NFC
NFC el 3 de Ag. de 2021
Comentada: Stephen23 el 3 de Ag. de 2021
I have 10 dicom files in a folder with names ["dicom1200.dcm","dicom1201.dcm"..."dicom1209.dcm"]. For each of these files, I want to load the dicominfo as a variable named dicom1200info, dicom1201info, etc. How do I do this so that the variable names are set iteratively? I am not sure cell arrays would work here because each dicominfo is itself a whole struct. I have heard it said that I should not be doing this, but I am not aware of any workarounds (additionally, i just need the task done and computational expense is not an issue).
Thanks
  1 comentario
Stephen23
Stephen23 el 3 de Ag. de 2021
"How do I do this so that the variable names are set iteratively?"
Just use a cell array.
"I am not sure cell arrays would work here because each dicominfo is itself a whole struct."
A cell array works for me without any problem:
C = {struct('A',1:3);struct('A',4:6)}
C = 2×1 cell array
{1×1 struct} {1×1 struct}
"I have heard it said that I should not be doing this, but I am not aware of any workarounds"
Indexing into cell arrays is not a "workaround", it is basic MATLAB.

Iniciar sesión para comentar.

Respuestas (1)

KSSV
KSSV el 3 de Ag. de 2021
files = dir('*dcm') ;
N = length(files) ;
for i = 1:N
file = files(i).name ;
% do what you want
end

Categorías

Más información sobre DICOM Format 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