MATLAB Answers

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

2 ビュー (過去 30 日間)
Levente Gellért
Levente Gellért 2021 年 3 月 1 日
回答済み: Levente Gellért 2021 年 3 月 2 日
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 件のコメント
Levente Gellért
Levente Gellért 2021 年 3 月 1 日
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

サインインしてコメントする。

採用された回答

dpb
dpb 2021 年 3 月 1 日
編集済み: dpb 2021 年 3 月 1 日
>> 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
>>

その他の回答 (1 件)

Levente Gellért
Levente Gellért 2021 年 3 月 2 日
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

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by