Importing .mat files in a loop

20 visualizaciones (últimos 30 días)
ilan ancelseritcioglu
ilan ancelseritcioglu el 15 de Feb. de 2023
Comentada: ilan ancelseritcioglu el 15 de Feb. de 2023
Hello everyone, I have 20 .mat files in the same folder and named like following:
data_1, data_2, data_3, ...data_20
and each has 2 tables and 2 variables inside
is there an easy way to import/load these files in a loop or with a command?
Thanks in advance

Respuesta aceptada

CAM
CAM el 15 de Feb. de 2023
for z=1:20
filename = ['data_', num2str(z)];
s(z) = load(filename); % Load variables into a structure
end

Más respuestas (1)

Luca Ferro
Luca Ferro el 15 de Feb. de 2023
Editada: Luca Ferro el 15 de Feb. de 2023
let's say you are in the directory, then:
matFiles=dir ('*.mat'); %finds all the .mat files (struct)
[NoF,~]=size(matFiles);
for ii=1:NoF %loops through them
matFileName=matFiles(ii).name; %get their name (string)
load(matFileName(1:end-4); %load them, cutting the '.mat' extention from the string
end
probably there is some better or faster method but this should work.
This also works for any generic .mat file regardless of the name as long as you are in the same directory.

Categorías

Más información sobre Data Type Conversion en Help Center y File Exchange.

Productos


Versión

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by