How to find the index of missing values in a cell array without looping through each element?
33 views (last 30 days)
Show older comments
Julia Smith
on 11 Jul 2022
Answered: Bharat Chandra Mukkavalli
on 11 Jul 2022
S1 = struct();
S2 = struct();
C = {S1 S2 missing};
0 Comments
Accepted Answer
Voss
on 11 Jul 2022
You can use cellfun to call ismissing on the contents of each cell:
S1 = struct();
S2 = struct();
C = {S1 S2 missing}
is_missing = cellfun(@ismissing,C)
idx_missing = find(is_missing)
(That's not got much loops.)
0 Comments
More Answers (1)
Bharat Chandra Mukkavalli
on 11 Jul 2022
Hi,
You can use the "cellfun()" function to apply a function to all the contents in a cell array. Further documentation on cellfun() can be found here: https://in.mathworks.com/help/matlab/ref/cellfun.html
Refer to link here on finding the indices of non-empty cells in a cell array: https://in.mathworks.com/matlabcentral/answers/42283-index-non-empty-cells-in-cell-array
Hope this helps!
0 Comments
See Also
Categories
Find more on Structures in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!