phfb.net
当前位置:首页 >> mAtlAB删除矩阵的两行 >>

mAtlAB删除矩阵的两行

A(:, 1) = [ ] 表示删除第一列A(:, n) = [ ] 表示删除第n列

两种方法:1,将所有要删除的行标顺序排列成向量V,然后用命令"矩阵变量名"(V,:)=[];%可删除与"矩阵变量名"对应的矩阵中的指定行(通过V指定),并改变原矩阵维数2,将所有要保留的行标顺序排列成向量V,然后用命令"矩阵变量名"="矩阵变量名"(V,:);%即将与"矩阵变量名"对应的矩阵中的指定行(通过V指定)重新赋给该变量 删除列类似.

同时删去?这好像是做不到的行和列必须分开删a(i,:) = [];a(:,j) = [];

m为矩阵,要删除列a与b, 这样就可以了.m(:,a) = [ ]; m(:,b) = [ ]; 同时删除:m(:,[a,b]) = [ ];

楼上的办法适用于去掉指定的某一行(列),当矩阵较大,不能一一枚举全零行(列)时用这个办法比较简单 a=[1 2 3;0 0 0;2 1 6]; a(find(sum(abs(a),1)==0),:)=[]; 如果要除去全零列就用下面这个 a(:,find(sum(abs(a),1)==0))=[];

>> A=[0,1,3 1,2,2 1,2,1 2,2,2 2,1,3] A = 0 1 3 1 2 2 1 2 1 2 2 2 2 1 3>> A(find(A(:,3)>2),:)=[] A = 1 2 2 1 2 1 2 2 2>>

如:A=magic(5) 删除第三行:A=[A(1:2,:);A(4:5,:)] 删除第三列:A=[A(:,4:5),A(:,4:5)]

X=[29 0 29 0 029 0 29 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 0 28.99 0 028.99 1

首先你的X是什么样子的矩阵啊?X(2:2:10) = [] 的意思是将矩阵X的第2、4、6、8、10个元素删除.如x=1:10x = Columns 1 through 8 1 2 3 4 5 6 7 8 Columns 9 through 10 9 10>> x(2:2:10) = []x = 1 3 5 7 9

>> a=[1,2,1,3,0,4,0,9,0 5]a = 1 2 1 3 0 4 0 9 0 5>> a(find(a==0))=[]a = 1 2 1 3 4 9 5>>

网站首页 | 网站地图
All rights reserved Powered by www.phfb.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com