Loading Data from multiple .mat files in a folder and plotting

16 views (last 30 days)

I need to load data from these 10 .mat files and plot fx versus Uref. Can anyone please help me with a sample code. I have tried using the for loop but it's not loading all the files.

  6 Comments
Rik
Rik on 12 May 2023
Also, please do not post a picture of your code, but post the code itself.
Stephen23
Stephen23 on 31 May 2023
Edited: Stephen23 on 31 May 2023
The simple and efficient approach is to let DIR get the filenames, e.g.:
P = 'absolute/relative path to where the files are saved';
S = dir(fullfile(P,'OCTAGON*.mat'));
for k = 1:numel(S)
F = fullfile(S(k).folder,S(k).name);
D = load(F)
..
end

Sign in to comment.

Answers (1)

Swaraj
Swaraj on 31 May 2023
Hi Imtiaz,
I understand that you want to load multiple .mat file from a folder and plot the data from it and you are facing problem in loading the .mat files.
To check your issue, I created a folder with following files.
I wrote the following sample code, and I was able to load the specified three .mat file and ignoring the excel file.
currentDir = pwd;
fileList = dir(currentDir);
fileList = {fileList.name};
filteredFileList = fileList(cellfun(@(x) contains(x, 'OCTAGON') && contains(x,'.mat'), fileList));
for i=1:length(filteredFileList)
file = load(filteredFileList{i});
%Do your task with the file here
end
This is just the sample code. You can rewrite it as per your requirements.
Hope it helps!!

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Products


Release

R2023a

Community Treasure Hunt

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

Start Hunting!