Loading multiple structure from a folder

5 views (last 30 days)
I am tried load multiple structures from a folder but I got a error
filepath = '..\sol_active_case11\';
mydata = dir(fullfile(filepath,'*.mat'));
full_file_names = fullfile(filepath,{mydata.name});
%% natsortfiles: Sorts text by character code and by number value
% By default matches integer substrings and performs a case-insensitive ascending sort.
% Options to select the number format, sort order, case sensitivity, etc.
mydata = natsortfiles(mydata);
for n = 1:numel(mydata)
F = fullfile(mydata(n).folder,mydata(n).name);
mydata(n).data = load(F);
A = [mydata.data];
Error using horzcat Number of fields in structure arrays being concatenated do not match.
Concatenation of structure arrays requires that these arrays have the same set of fields.
Error in Active_flow1D_case11_plot (line 23)
A = [mydata.data];

Accepted Answer

Matt J
Matt J on 24 Feb 2024
Edited: Matt J on 24 Feb 2024
It is because not all of the sub-structures mydata(n).data have the same fields. If you contest that, attach the mydata variable in a .mat file for us so that we can all examine it.
Matt J
Matt J on 24 Feb 2024
You're welcome, but please Accept-click the answer if the question is resolved.

Sign in to comment.

More Answers (0)


Find more on Historical Contests 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!