How to access data set from different folders?

19 vues (au cours des 30 derniers jours)
SM
SM le 20 Juil 2020
Commenté : SM le 20 Juil 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.

Réponse acceptée

Walter Roberson
Walter Roberson le 20 Juil 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
  1 commentaire
SM
SM le 20 Juil 2020
Perfect! Thank you very much!

Connectez-vous pour commenter.

Plus de réponses (1)

Image Analyst
Image Analyst le 20 Juil 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

Catégories

En savoir plus sur Develop Apps Using App Designer dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by