刪除全0行或列

all的用法,具體參考:點擊打開鏈接

sum的用法,具體參考:點擊打開鏈接

1、去掉元素爲全0的行:   a(all(a==0,2),:)=[]

a=[1,2,4,0;0,0,0,0;3,4,0,0;0,4,5,0];
>> a(all(a==0,2),:)=[]%去掉全0行

a =

     1     2     4     0
     3     4     0     0
     0     4     5     0

2、去掉元素爲全0的列:   a(:,all(a==0,1))=[]

>> a=[1,2,4,0;0,0,0,0;3,4,0,0;0,4,5,0]
>> a(:,all(a==0,1))=[]%去掉全0列

a =

     1     2     4
     0     0     0
     3     4     0
     0     4     5

3、去掉和爲全0的行:   a(find(sum(a,2)==0),:)=[]

a=[-1,2,3,4;-1,0,1,0;2,0,1,2;0,-2,0,1];
>> a(find(sum(a,2)==0),:)=[]%去掉和爲全0行

a =

    -1     2     3     4
     2     0     1     2
     0    -2     0     1

4、去掉和爲全0的列:  a(:,find(sum(a,1)==0))=[]

 a=[-1,2,3,4;-1,0,1,0;2,0,1,2;0,-2,0,1]
>> a(:,find(sum(a,1)==0))=[]%去掉和爲全0列

a =

     3     4
     1     0
     1     2
     0     1


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章