I have to concatenate 6 .mat eeg files
3 views (last 30 days)
Show older comments
Harshini Gangapuram
on 24 Mar 2019
Commented: Harshini Gangapuram
on 24 Mar 2019
I have to concatenate six .mat files that contains EEG data. The data has 8 channels and different samples.
I want to concatenate the data column wise so that there are 8 rows for channels and the samples keep on adding column wise.
0 Comments
Accepted Answer
Walter Roberson
on 24 Mar 2019
filenames = {'first.mat', 'second.mat', 'third.mat', 'fourth.mat', 'fifth.mat', 'sixth.mat'};
nfiles = length(filenames);
data_cell = cell(nfiles,1);
for K = 1 : nfiles
data_struct = load(filenames{K});
%we do not know the names of the variable the data is stored in.
%assume it is the first variable in the file.
fn = fieldnames(data_struct);
this_data = data_struct.(fn{1});
data_cell{K} = this_data;
end
%now put it all together into one matrix
data = vertcat(data_cell{:}) .';
5 Comments
Walter Roberson
on 24 Mar 2019
save('Concatenate.mat', 'data')
or
save Concatenate.mat data
More Answers (0)
See Also
Categories
Find more on Biomedical Signal Processing 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!