Я искал и нашел некоторые потенциальные решения для моей проблемы, но не смог реализовать код.
По сути, у меня есть один каталог с 32 подпапками . Каждая из 32 подпапок содержит 4 файла внутри (.mat с 1 строкой и несколькими миллионами столбцов в каждой). Моя переменная интереса называется data (см. Ниже в коде).
Мне нужно получить доступ ко всем 4 .mat-файлам внутри подмножества подпапок и добавить / объединить их в одну большую матрицу . Более того, каждая группа из 4 файлов в каждой подпапке должна находиться рядом друг с другом в конечной матрице.
Также известны имена подпапок и файлов внутри:
Папки = TT1, TT2, и т. Д.
Файлы = TT1ch1, TT1ch2, TT1ch3, TT1ch4; TT2ch1, TT2ch2, TT2ch3, TT2ch4, и т. Д.
Мне также необходимо указать в коде, какие подпапки нужно открыть, и прочитать 4 файла. Не все должны быть прочитаны в любое время. До сих пор у меня есть это:
TTs = [1,2,3,4,5]; % List of sub-folders to use.
for i = TTs;
addpath(strcat('TT',num2str(i)));
cd (strcat('TT',num2str(i)));
for w = 1:4; %get data from the 4 files
load(strcat('TT',num2str(i),'ch', num2str(w), '.mat'));
allChs(w,:) = data(1,:); %concatenate into one matrix
end
cd ..
rmpath(strcat('TT',num2str(i)));
end
С помощью этого кода я могу прочитать данные из 4 файлов данной подпапки и скопировать их в новую матрицу (allChs). Тем не менее, когда я пытаюсь добавить код для просмотра всех папок, я просто перезаписываю то, что у меня есть ...
Я пробовал разные вещи, но застрял на этом этапе. Любая помощь будет приветствоваться.
Ура,
Oiko