I am struggling with finding a proper way to import files from subfolders. I have a main folder (only with matlab files) and several subfolders (experimental data) that contain 3 .txt files (see picture attached). I would like to import all those files that way that each file will change a name accordingly to the name order of the subfolder so A from the folder "6550_19_lB=4,0" becomes an "A_1" and A from the folder "6550_19_lB=5,0 becomes A_11 (as it is 11th subfolder in name-wise order). I will indicate that the number of subfolders is not always the same number. How should it be done?

 Réponse acceptée

Jan
Jan le 8 Fév 2021
Modifié(e) : Jan le 8 Fév 2021

0 votes

Folder = cd;
FileList = dir(fullfile(Folder, '**', 'A.txt'));
A = cell(1, numel(FileList));
for iFile = 1:numel(FileList)
File = fullfile(FileList(iFile).folder, FileList(iFile).name);
A{iFile} = load(File); % Or how you import the txt files
end
Now it is not "A_1" but the much more powerful A{1} etc.
Do not hide inidces in the names of variables, but use arrays.

2 commentaires

Mateusz Brzezinski
Mateusz Brzezinski le 8 Fév 2021
Thank you! I will try it out and mark the answer as accepted if it works!
Mateusz Brzezinski
Mateusz Brzezinski le 9 Fév 2021
Works like a charm !

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Large Files and Big Data dans Centre d'aide et File Exchange

Produits

Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by