Which row has the minimum non zero element?

1 次查看(过去 30 天)
Hello i have a matrix and i want to find which is the row with minimum nonzeros elements.I dont want the number of non zeros,but i want to know which is the row.

采纳的回答

Star Strider
Star Strider 2015-3-21
I’m not certain what you mean by ‘minimum nonzeros elements’. This takes the row sum of the rows with nonzero elements and finds the row with the smallest row sum:
M = randi(51, 20, 5)-1;
[r0,~] = find(M == 0);
Mnz = M(setdiff([1:size(M,1)],r0),:);
[Mu, ix] = sort(sum(M,2));
Row_min_nz = is(x); % Row With Minimum Row Sum

更多回答(2 个)

Jan
Jan 2015-3-21
M = randi(5, 6, 6) - 1;
[V, Index] = min(sum(M == 0, 2));

Konstantinos Sofos
Konstantinos Sofos 2015-3-21
a = [2,2,3;0,2,5;1 2 3]
[row,column]=find(a==min(min(a(a>0))))

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by