How can I filter multiple files ?

W
Wyatt · Mar 9, 2021 · 2K views
Question
I have made a filter as following   [b,a] = butter(9,.02,'low'); x=textread('noisy.out'); y=filter(b,a,x); save filtered.out y -ASCII   I have 1000 files and I would like to filter all my files using the above filter. Is there any way that I can do this efficiently? my files are named like 1.out 2.out , ... 1000.out   any suggestion would be appreciated.   my *.out files just include one column with numbers   this is one example -4.034E+02 -4.007E+02 -3.987E+02 -3.978E+02   All numbers in one column and each file contains 13000 numbers
Expert Answer
Profile picture of Kshitij Singh
Kshitij Singh PhD Expert
Answered Aug 24, 2026
Parse the folder for existing 1-1000.out files and import them one-by-one apply filter and save:
 
 
% Retrieve all the files in a directory
names = dir('C:\Users\Oleg\Desktop\Nuova cartella');
names = {names(~[names.isdir]).name};

% Select only the files #.out
idx   = ~cellfun('isempty',regexp(names,'\d+\.out'));
names = names(idx);

% Filter
[b,a] = butter(9,.02,'low'); 
for n = names
  % Open file for reading
  fid = fopen([myDir n{:}],'r');
  x   = textscan(fid,'%f');
  y = filter(b,a,cat(1,x{:}));
  % Discard content and write filtered data
  fid = fopen([myDir n{:}],'w');
  fprintf(fid,'%E\r\n',y);
  fid = fclose(fid);
end
100% Run Guarantee 3-Hour Fast-Track Delivery

Need a Custom Version or Complete Simulation for This Problem?

Our 500+ PhD engineers build, debug, and optimize working MATLAB scripts and Simulink (.slx) models tailored to your exact assignment rubrics with zero plagiarism.

Tested on MATLAB R2024b / R2026a
Turnitin 0% Plagiarism Report
Free 7-Day Revisions Guarantee
Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!