find sum of all the entries with value 0
1 回表示 (過去 30 日間)
古いコメントを表示
I have a cell matrix of mat = [ 1 0 0 4;0 2 0 4], i want to find the sum of the all the entries having value 0. in the case of given example the entries having count 0 are 4; so sum will be 4. how can i do this.
0 件のコメント
採用された回答
その他の回答 (1 件)
Jos (10584)
2013 年 11 月 30 日
NNZ is the dedicated function to do this:
nnz(~mat)
3 件のコメント
John D'Errico
2013 年 11 月 30 日
Note that nnz(~mat) will be poor even for large sparse matrices, because if mat is sparse, then ~mat must create a large and rather dense logical matrix. Better then would be to use a form like:
numel(mat) - nnz(mat)
In my tests, for a large fairly sparse matrix like that generated by Matt in his comment, my form was the fastest.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!