作业帮 > 综合 > 作业

请问用matlab,如何将一个二维矩阵中 所有列数据都小于600的行删除?

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/05/12 08:06:32
请问用matlab,如何将一个二维矩阵中 所有列数据都小于600的行删除?
请问用matlab,如何将一个二维矩阵中 所有列数据都小于600的行删除?
删除矩阵中小于600的元素所在的行,那么只要找到小于600元素所在的行,直接利用删除多行操作,即可完成.
>> a=[700 650 300;650 650 956;123 654 784;650 645 865;142 686 698]
a =
700 650 300
650 650 956
123 654 784
650 645 865
142 686 698
>> [m,n]=find(a> a([m(1) m(2) m(3)],:)=[]%%删除矩阵中小于600的元素所在的行
a =
650 650 956
650 645 865
再问: 如果一行有多个> a=a*4 a = 1.0e+003 * 3.8005 2.4617 0.2316 0.0611 3.3525 0.7737 1.9862 2.9085 3.1793 0.5461 0.9246 3.1677 1.4115 2.9871 0.0786 2.7289 3.5991 1.2372 3.8274 0.0470 2.4274 3.6873 3.2527 1.7804 2.7251 1.2111 3.2865 3.3540 2.0904 3.5756 1.9439 2.9528 0.0394 3.7273 1.5179 2.1667 2.5796 2.2723 3.5206 0.7966 3.5652 0.7051 0.5556 1.8640 3.3272 0.6035 3.2719 1.4817 0.6918 1.1949 3.0484 1.6228 0.8111 1.6746 2.0113 2.7916 2.6409 2.8110 3.9190 2.6458 1.8259 3.7419 0.7949 3.3849 2.8379 1.5135 1.3679 2.1863 1.0858 1.1376 0.0740 3.6676 2.4152 2.1006 1.7156 3.4400 1.1589 1.7795 1.0093 1.8769 3.2856 1.6411 1.0888 0.8106 1.2185 3.4146 1.3648 2.7783 3.5030 0.2591 1.7788 3.5746 0.7953 2.6885 0.7586 2.3743 2.1363 2.4852 2.9492 3.9533 >> [m,n]=find(a> m=unique(m)%%去掉重复元素,并排序 m = 1 2 4 5 8 9 >> a(m,:)=[]%%m中元素多的话,直接写m,即可删除大量的行,我上次是举个例子,写了m(1),m(2),m(3) a = 1.0e+003 * 2.4274 3.6873 3.2527 1.7804 2.7251 1.2111 3.2865 3.3540 2.0904 3.5756 3.0484 1.6228 0.8111 1.6746 2.0113 2.7916 2.6409 2.8110 3.9190 2.6458 1.8259 3.7419 0.7949 3.3849 2.8379 1.5135 1.3679 2.1863 1.0858 1.1376 1.7788 3.5746 0.7953 2.6885 0.7586 2.3743 2.1363 2.4852 2.9492 3.9533