删除全零行
all函数:检测矩阵中是否全为零元素
扩充:any函数,检测矩阵中是否有非零元素,有返回1,无返回0
**vector = all(array, 1)**返回一个行向量,可以认为all(A, 1)等价于all(A)
**vector = all(array, 2)**返回一个列向量,用于检测每一行是否全为非零元素,如果某一行中有一个元素为零,则返回0,如果某一行中全为非零元素,则返回1,由此构成一个列向量。
例子
删除全零行
>> a = [1,1,1;0,0,0;2,2,2]
a =
1 1 1
0 0 0
2 2 2
>> all(a==0,2)
ans =
3×1 logical 数组
0
1
0
>> a(all(a==0,2),:) = []
a =
1 1 1
2 2 2
删除全零列
>> a=[1,2,0;2,3,0;2,2,0]
a =
1 2 0
2 3 0
2 2 0
>> all(a==0,1)
ans =
1×3 logical 数组
0 0 1
>> a(:,all(a==0,1)) = []
a =
1 2
2 3
2 2