比如如图所示矩阵
删去2、3两行。
A = [1 6 9 0 0 0 0 0
2 4 5 6 0 0 0 0
1 2 3 4 0 0 0 0
1 0 0 0 0 0 0 0
1 6 3 0 0 0 0 0
1 2 3 5 0 0 0 0 ];
n0 = sum(A ~= 0,2); % 每一行的0元素个数
[nmax,ind] = max(n0); % 找到0元素最多的行,下标为ind
B = A([1:ind-1 ind+1:end],:); % 去除非0元素最多的行
n0 = sum(B ~= 0,2);
[nmax2,ind] = max(n0); % 找到0元素最多的行,下标为ind
while nmax2 == nmax % 循环去除非零元素与第一行同样多的行
B = B([1:ind-1 ind+1:end],:);
n0 = sum(B ~= 0,2);
[nmax2,ind] = max(n0); % 找到0元素最多的行,下标为ind
end
B % 显示结果
结果:
B =
1 6 9 0 0 0 0 0
1 0 0 0 0 0 0 0
1 6 3 0 0 0 0 0