How to remove empty line from struct?
Show older comments
Hello every one
I have struct D with two fields: index
sequence [ ]
D :
1 [1 2 4 5]
[] []
3 [1 2 4 5]
4 [1 2 3 5]
I want to remove the empty line from D and become
1 [1 2 4 5]
3 [1 2 4 5]
4 [1 2 3 5]
thank you
Answers (2)
Walter Roberson
on 16 May 2023
mask = cellfun(@isempty, {D.index}) & cellfun(@isempty, {D.sequence});
D = D(~mask);
D.f1 = [1 2 3 4 5];
D.f2 = [];
% structure with 2 fields
D
% get fields
fields = fieldnames(D)
% remove empty fields
D = rmfield(D, fields(structfun(@isempty, D)))
4 Comments
Mira le
on 17 Aug 2021
Mira le
on 17 Aug 2021
Yazan
on 17 Aug 2021
Provie your structure array so that I can take a look.
Tobias Wrammerfors
on 16 May 2023
As far as I can tell, this seems to remove empty fields, not rows that are empty in all fields.
Categories
Find more on Structures 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!