How to loop through N different folders with M different.txt files(text​001.txt...​..text010.​txt) with (O rows and P columns). and plot the average(te​xt001.txt.​....text01​0.txt)of M different figures from the N folders.

1 view (last 30 days)
close all
clear all
D = 'D:\dataprocessing\';
S = dir(fullfile(D,'*'));
N = setdiff({S([S.isdir]).name},{'.','..'}); % list of subfolders of D.
sums = [];
counts = [];
for ii = 1:numel(N)
T = dir(fullfile(D,N{ii},'*')); % improve by specifying the file extension.
C = {T(~[T.isdir]).name}; % files in subfolder.
for jj = 1:numel(C)
F = fullfile(D,N{ii},C{jj})
fprintf('test%s\n',F);
S(ii).data = F(:);
end
end
X = vertcat(S.data);
avgArrivalDelay = sum(sums)/sum(counts)

Answers (2)

Image Analyst
Image Analyst on 15 Mar 2020
Try this. Adapt as needed:
% Get a list of all txt files in the current folder, or subfolders of it.
fds = fileDatastore('*.txt', 'ReadFcn', @importdata)
fullFileNames = fds.Files
numFiles = length(fullFileNames)
% Loop over all files reading them in and plotting them.
for k = 1 : numFiles
fprintf('Now reading file %s\n', fullFileNames{k});
% Now have code to read in the data...
% Now code to plot the data...
end
  4 Comments

Sign in to comment.


MS
MS on 16 Mar 2020
Thanks. i am attaching the THREE test from one folder.

Categories

Find more on Large Files and Big Data in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!