finding cells with positive values in a cell array with empty cells, cells of positive integers, and cells of nans

1 view (last 30 days)
Dear Experts,
I would like to have the number and indices of cells with positive values in a cell array with cells of positive integers, empty cells and nans.
The solutions I have found in this topic were not suitable.
Please, find the array attached.
Many thanks
LG
  2 Comments
dpb
dpb on 1 Mar 2021
"solutions I have found in this topic were not suitable."
So, what were those? No point in repeating the unwanted...
Levente Gellért
Levente Gellért on 1 Mar 2021
Dear dpb,
I was playing around with the following suggestions;
OutOfRange = (mycell > 0);
NrOutOfRange = sum(OutOfRange);
or
idx = find([mycell{:}] > 0);
or
idx = cellfun(@(x)~isempty(x) && x > 0, mycell);
Regards
lg

Sign in to comment.

Accepted Answer

dpb
dpb on 1 Mar 2021
Edited: dpb on 1 Mar 2021
>> idx=cellfun(@(c)any(c>0),co_burst);
>> whos idx
Name Size Bytes Class Attributes
idx 856x340 291040 logical
>> sum(idx,'all')
ans =
72
>>
or, the locations...
>> [r,c]=ind2sub(size(idx),find(idx));
>> [r(1:5) c(1:5)]
ans =
5 1
8 4
31 13
34 15
55 25
>>

More Answers (1)

Levente Gellért
Levente Gellért on 2 Mar 2021
Dear dpb, great, many thanks, works well. The 'all' option for sum works from 2018 I,think, but I could overcome the issue.
Thanks again.
Regards
lg

Categories

Find more on Matrices and Arrays 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!