Filter löschen
Filter löschen

How to save matrixes to files with similar names in loop?

2 Ansichten (letzte 30 Tage)
MC3105
MC3105 am 20 Okt. 2014
Kommentiert: Guillaume am 20 Okt. 2014
Hello everyone,
with your help I was able to create a loop that loads different datasets and then runs through my whole code. The names of the original datasets are pretty similar: for example data_ID_200.mat and data_ID_304.mat I used the following command to load these data files:
l=dir('Z:\.....\data_ID_*.mat')
names={l.name}
for n=1:numel(names)
load('[Z:\...\' names{n}])
run('Code')
end
Now before the loop ends and starts the next iteration I want to save some matrixes that my code created. How can I specify the names for the matrixes I want to save? Preferably I would like to save these matrixes to matrix_ID_200.mat and matrix_ID_304.mat - so that they correspond directly to my original datasets and I can easily use them in further applications that require the ID of each dataset.
Is there anyway I could do this? Right now my list for names contains:
names = 'data_ID_200.mat' 'data_ID_304.mat'
Maybe I could kind of cut out the ID number and insert them into some kind of string??
Thanks a lot for your help!!!

Akzeptierte Antwort

Guillaume
Guillaume am 20 Okt. 2014
There are many ways you could do this, for example using a regular expression to extract the ID, but a simple way:
savename = strrep(names{n}, 'data', 'matrix');
save(savename, ...);
  3 Kommentare
MC3105
MC3105 am 20 Okt. 2014
thanks! I did it wrong before, but I found out how to do it now :)
Guillaume
Guillaume am 20 Okt. 2014
Use save with the savename, and the names of the variables you want to save. Use fullfile to build the full path:
save(fullfile(''Z:\.....\', savename), 'somevarname');

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

michael scheinfeild
michael scheinfeild am 20 Okt. 2014
files=dir(fullfile("data","*.dat");
for(n=1:length(files))
d=files(n).name;
somename=strcat('a','bla',num2str(n));....
end

Kategorien

Mehr zu Data Import from MATLAB finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by