MATLAB Answers

How to access data set from different folders?

11 views (last 30 days)
SM
SM on 20 Jul 2020
Commented: SM on 20 Jul 2020
I can easily access .dat files from the current directory by using the following codes:
%% Input data set
load ProcMacMatrix.dat % load the file
load SuppMacMatrix.dat % load the file
load CostMatrix.dat % load the file
load Dataset.dat % load the file
load ProcessingTime.dat % load the file
My problem needs to access the similar data set, as described, from the Instance1 and Instance2. First, I want to access from the Instance1 and then Instance2. We may use for loop to access these two folders subsequently.
How can i do that?
I appreciate your help.

Accepted Answer

Walter Roberson
Walter Roberson on 20 Jul 2020
finfo = dir('Instance*');
finfo(~[finof.isfolder]) = [];
foldernames = {finfo.name};
ninst = length(foldernames);
instance_data(ninst) = struct();
for K = 1 : ninst
thisfolder = foldernames{K};
instance_data(K).ProcMacMatrix = load(fullfile(thisfolder, 'ProcMacMatrix.dat')); % load the file
%and similar for the other files
end

More Answers (1)

Image Analyst
Image Analyst on 20 Jul 2020
Get a list of all files under the current folder like this:
filePattern = fullfile(pwd, '**/*.mat');
fileList = dir(filePattern);
for k = 1 : length(fileList)
thisFullfileName = fullfile(fileList(k).folder, fileList(k).name);
fprintf('Processing %s\n', thisFullfileName);
s = load(thisFullfileName)
end

Community Treasure Hunt

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

Start Hunting!

Translated by