Import multiple data files and assign to variables

I would like to import multiple data files and assign their contents to a variable.
BurnIn_2ndary_20150527_1940.mat
BurnIn_2ndary_20150528_1500.mat
BurnIn_2ndary_20150528_2200.mat
BurnIn_2ndary_20150529_1500.mat
BurnIn_2ndary_20150530_1000.mat
BurnIn_2ndary_20150530_2200.mat
BurnIn_2ndary_20150531_1600.mat
Each file consists of a 7x4 matrix (called 'details') that consists of the mean, std, min, and max values for 7 different parameters determined by data from its original file.
I am continually adding files to the folder for each set of data I get daily sometimes twice a day. I need to be able to import all files and assign them to different variables that could range to infinity (because I am continuously adding files).
I tried this
dir *2ndary*.mat
files = dir('*.mat');
for i=1:length(files)
eval(['load ' files(i).name]);
end
But I still don't know how to assign each matrix to a new variable for further use. I am worried that maybe because each matrix is called 'details' in each file from previous code might cause an issue

 Respuesta aceptada

Stephen23
Stephen23 el 27 de Jul. de 2015
Editada: Stephen23 el 25 de Jun. de 2019
You should load the files into a variable, such as into a cell array:
C{k} = load(...);
or into a non-scalar structure, which would be versatile and efficient:
S(k) = load(...);
Note that you can also select the variables to load:
S(k) = load(...,'varname');
Avoid eval for trivial code like that:

2 comentarios

Calabrese
Calabrese el 27 de Jul. de 2015
Thank you for the tip on eval. Once I bring these files in I plan to create 7 different plots, one for each parameter. Each parameter plot will have the mean, std, min and max values for the corresponding day for which the data was taken over a continuing period of time.
What would be the best way to load in the data, in your opinion, to process what I need to do with it? Please provide an example if you can
I plan to load in the files and assign the same row on each file to one of the 1 of the 7 different parameters (which will be a matrix) that can continually grow.
Stephen23
Stephen23 el 28 de Jul. de 2015
Editada: Stephen23 el 28 de Jul. de 2015
Load the data into a non-scalar structure, as I explained at the beginning of my answer. And read the link to know how to access the data inside of it.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Preguntada:

el 27 de Jul. de 2015

Editada:

el 25 de Jun. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by