how to read multiple mat files and and extract data from those

26 views (last 30 days)
I have a multiple .mat files (like 100 file) I need to load and extract specific data from those files. I.e to extract the row and columns so can anyone please help me out in this.
  2 Comments
Kevin Chng
Kevin Chng on 7 Oct 2018
mat = dir('*.mat');
for q = 1:length(mat)
load(mat(q).name);
end
However, you are mentioning you want to extract specific data from those files. As per my knowledge, may be we need to know what is the name of variable in the mat file first.
May be you can attach few of your mat file, and further elaborate it. So may be some of expert here can try it out.
OriAlpha
OriAlpha on 7 Oct 2018
hello, has I mentioned above I have these type .mat files (like 150 files). i have to load all those files and have to extract column 11 in this all mat files and save it in one .mat file
i have attached few files below

Sign in to comment.

Accepted Answer

Kevin Chng
Kevin Chng on 7 Oct 2018
Hi Suhas Goravale Siddaramu,
I have tried out your attached mat. file. I guess you are saying row 11 instead of column 11. In your mat.file, there is variable Pre-cell, it has 3 columns and 14 rows.
mat = dir('*.mat');
for q = 1:length(mat)
load(mat(q).name);
data(q,:) = Pre_cell(11,:)
end
with the additional line of code data(q,:) = Pre_cell(11,:), it will load all the row 11 of mat file into data.
Should you have any doubt, you may ask.
  4 Comments
OriAlpha
OriAlpha on 8 Oct 2018
Hello, I have another doubt
I have made a loop which loads all mat files in a folder then I have applied multiple functions for all the mat files and even the operation is going without errors and the last thing is that I have to save one loop value to one file.
like for 1 loop it should create 1 file
for example if 200 loops it should create with 200 files with different names.
so how can i do it

Sign in to comment.

More Answers (1)

ANKUR KUMAR
ANKUR KUMAR on 7 Oct 2018
Whenever you wish to load all files, just use dir.
F=dir('*.mat')
for i =1:length(F)
load(F(i).name)
end

Community Treasure Hunt

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

Start Hunting!