matlab中怎么删除全零行或者列
有时候我们在使用matlab编程计算的时候,想删除矩阵中全零行或者列,怎么删除呢,下面来分享一下方法
操作方法
- 01
第一步删除全零行或者列之前,我们首先要了解一下all函数和any函数的用法,可以通过这两个函数来删除全零行或者列,介绍如下图所示:
- 02
第二步在matlab命令行窗口中新建一个a=[1,2,4;0,0,0;1,3,5;0,0,0]矩阵,可以看到这个矩阵中有两行为全零行,下面来删除这两行,如下图所示:
- 03
第三步删除全零行,主要通过all(a==0, 2),这返回的是一个列向量,可以检测到全零行的位置,因为使用了a=0,返回的为0代表是非零元素,返回的为1代表是全零行,如下图所示:
- 04
第四步我们使用a(all(a==0,2),:)=[]代码来删除全零行,如下图所示:
- 05
第五步按回车键之后,可以看到已经删除了a矩阵的2行全零行,如下图所示:
- 06
第六步需要注意的是,如果我们直接使用a(all(a,2),:)=[]来删除,删除的是非零行,留下的是全零行,如下图所示:
赞 (0)