How to count the number of nonzero numbers in a row.

9 次查看(过去 30 天)
I having a matrix A=[ 0 0 0 0 0.4 0 0 0.3;
0.1 0 0 0.7 0 0.2 0 0 0;
0 0 0.6 0 0 0 0 0.9]
I want to count the number of elements which is not equal to zero present in each row
the answer will be A=[2;
3;
2]
I tried with the command
D=(numel(A~=0),1)
But unable to get the result.Could anyone please help me on this.

采纳的回答

KSSV
KSSV 2019-2-27
编辑:KSSV 2019-2-27
Read about nnz
A=[ 0 0 0 0 0.4 0 0 0.3;
0.1 0 0 0.7 0 0.2 0 0 ;
0 0 0.6 0 0 0 0 0.9] ;
[m,n] = size(A) ;
iwant = zeros(m,1) ;
for i = 1:m
iwant(i) = nnz(A(i,:)) ;
end
iwant

更多回答(1 个)

madhan ravi
madhan ravi 2019-2-27
No loops needed:
sum(A~=0,2)

类别

Help CenterFile Exchange 中查找有关 Sparse Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by