Load and do operations for multiple files in a loop
Afficher commentaires plus anciens
Hi everyone,
I have 306 files (1x1 struct with 2 fields: x and y) in the following format: ATA 1....306.mat. These represent coordinates from a digitized signal.
I want to read the files in MATLAB and do similar operations on all of them. The code I want to write in a loop is:
%convertstructure to table
data = struct2table(data)
%convert table to timetable
data.x= seconds (data.x)
data = table2timetable(data, 'RowTimes', x)
% resolve potentially duplicate times in preparation for next step
data= unique(data,'sort','rows')
%resample data (using nearest neighbour) in timetable to resolve issue of irregular times. d predefines a time step.
d= seconds(0.0001)
data = retime(data,'regular','nearest','TimeStep',d)
save ('data')
I have made a few different unsuccesful attempts. One of them being:
filePattern = fullfile('ATA*.mat'); %the 306 files are in the following format ATA 1....306.mat
theFiles = dir(filePattern);
for k= 1:306(theFiles);
data = load(theFiles.name);
data = struct2table(data);
data.x= seconds (data.x);
data = table2timetable(data, 'RowTimes', x);
data= unique(data,'sort','rows');
d= seconds(0.0001);
data = retime(data,'regular','nearest','TimeStep',d);
% then save as original file name
end
Your help would be much appreciated!
Regards,
Pasha
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Whos dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



