How can I access data from folders?

36 visualizzazioni (ultimi 30 giorni)
SM
SM il 13 Lug 2020
Commentato: Walter Roberson il 17 Lug 2020
Code
files = dir('H:\Project Two\Programming and DataSet');
% Get a list of all files and folders in this folder.
names = {files.name};
% Get a logical vector that tells which is a directory.
dirFlags = [files.isdir] & ~strcmp(names, '.') & ~strcmp(names, '..');
% Extract only those that are directories.
subDirsNames = names(dirFlags);
Output
subDirsNames =
1×2 cell array
{'Instance01'} {'Instance02'}
Now, Instance01 folder has two files which are costMatrix.dat and ProcessMatrix.dat. Silmilarly, Instance02 folder has two files which are costMatrix.dat and ProcessMatrix.dat. First, I want to access and work on Instance01 folder and once it is done, I want to access and work on the Instance02. How can I do that?

Risposte (1)

Walter Roberson
Walter Roberson il 13 Lug 2020
files = dir('H:\Project Two\Programming and DataSet\*\*.dat');
names = fullfile( {files.folder}, {files.name} );
names will now be the fully-qualified names of .dat files, each with its appropriate folder name.
Note though that names will not be subdivided up into folders.
  4 Commenti
SM
SM il 13 Lug 2020
Instance01 and Instance02 contain similar types of data set but in different sizes. First I want to work on the data set of Instance01 to be optimized and store in another file. Once the Instance01 will be optimized, the Instance02 need to be accessed and optimized. So one folder will be accessed once.
Folder name could be sequential such as Instance1, Instance2, Instance3,.....,Instance20. So, sprintf('Instance%d', k) could be used. It forces to come sequentially I guess. What do you think?
Walter Roberson
Walter Roberson il 17 Lug 2020
sprintf('Instance%d', k)
should work if you want folders such as Instance1 Instance2 . Your earlier used Instance01 Instance02 which would correspond to
sprintf('Instance%02d', k)

Accedi per commentare.

Categorie

Scopri di più su Startup and Shutdown in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by