How to relabel the structures fields in a sequence?
1 view (last 30 days)
Show older comments
I have a structure A which has 20 fields(bin_1 to bin_20), but i removed some field with null values. Now I am left with the following.
A = struct with fields:
bin_1: [14115×19 table]
bin_17: [9829×19 table]
bin_18: [11772×19 table]
bin_19: [14115×19 table]
Now I need program that converts the bin_ indices automatically to a sequence:
A = struct with fields:
bin_1: [14115×19 table]
bin_2: [9829×19 table]
bin_3: [11772×19 table]
bin_4: [14115×19 table]
Will really appreciate some help here. Thanks
1 Comment
Stephen23
on 26 Oct 2023
You would not need to do this if you used a non-scalar structure. Better data design makes this problem disappear.
Accepted Answer
Walter Roberson
on 26 Oct 2023
newfields = "bin_" + (1:length(fieldnames(A)));
A = cell2struct(struct2cell(A), newfields);
More Answers (0)
See Also
Categories
Find more on Tables 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!