Loading files from subfolders, the file name in all the folders are same but with different data.
4 views (last 30 days)
Show older comments
I am trying to combine results from a simulation. The simulation results file contains 40 sub folders and the files in all the folders are same but with different data. Example my first folder contains files file1,file2,file3,....,file 30. Every other sub folders also contain files with same name. Now I need to load the data of file1 from all the folders. Can someone help me out regarding this?
2 Comments
Rik
on 18 Dec 2017
Starting from R2016b, you can use dir with path wildcards, otherwise you will have to use dir to generate the list of folders.
Answers (2)
Image Analyst
on 18 Dec 2017
See attached demo to process files in a folder and all its subfolders..
0 Comments
Walter Roberson
on 18 Dec 2017
projectdir = '.'; %name directory that has the subfolders in it
dinfo = dir(projectdir);
dinfo(~[dinfo.isdir]) = []; %remove non-directories
dinfo(ismember({dinfo.name}, {'.', '..'})) = []; %remove . and .. directories
foldernames = fullfile(projectdir, {dinfo.name});
numfolder = length(foldernames);
MaxFile = 30;
data_by_file = cell(MaxFile, 1);
for K = 1 : MaxFile
thisfile = sprintf('file%d', K);
instance_names = fullfile(foldernames, thisfile);
data_for_this_name = [];
for F = 1 : numfolder
data_for_this_instance = LoadInData( instance_names{F} ); %do whatever to load data
data_for_this_name = [data_for_this_name; data_for_this_instance];
end
data_by_file{K} = data_for_this_name;
end
2 Comments
Walter Roberson
on 18 Dec 2017
for K = 1 : MaxFile
thisfile = sprintf('file%d', K);
that causes iteration over file1, file2, file3, etc.
The data for file1 will put together and stored into data_by_file{1}, for file2 will be in data_by_file{2} and so on.
See Also
Categories
Find more on File Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!