matlab 删除矩阵多行
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/20 15:07:20
N=length(a);b=repmat(a,N,1);
这个问题确实很有意思,我好歹弄出来了,不过还是用了for循环,请参阅,看看能不能修改clear;clc;closealla=[1023;0021;1103];[m,n]=size(a);[b,c]=f
举个例子,思路就是利用逻辑运算,找到符合条件的行,然后新的矩阵只取不满足条件的那几行:>>aa=4421314541301242104331454454514422554214354153423>>i
删除矩阵中小于600的元素所在的行,那么只要找到小于600元素所在的行,直接利用删除多行操作,即可完成.>>a=[700650300;650650956;123654784;650645865;142
a=[1112;2243;4415;6224];L=rem(a,3)==0;%找出a中为3的倍数的元素S=sum(L,2);%按行求和R=a(S==0,:)%取出指定行(没有3的倍数)R=111244
加一句X(all(X(:,[4,5,6])==0,2),:)=[];
str='abA12B&^@';index=find(str>='A'&str再问:很想学好matlab,希望能向你请教,我的qq1032491006,希望加你为好友再答:我的是:123825356再
ch='anCDHUe123'ch=anCDHUe123>>k=find(ch>='A'&ch>ch(k)=[]ch=ane123
因为循环时一遇到非2的元素就删除了,结果d变短了,而循环的长度还按原来的长度进行索引,所以超出了矩阵长度.d(find(d~=2))=[]或者,找出有2的元素个数,直接新建相等长度元素都为2的矩阵.d
wacs5的回答非常正确,也可以这样:clc;clearz=[125-5-43;3-79-280][i,j]=find(z
不对,应该是A=[2,4;2,1;5,3;6,2;7,1]A([24],:)=[]
X=[2902900290290028.99028.990028.99028.990028.99028.990028.99028.990028.99028.990028.99028.990028.99
a(b)=[]
同时删去?这好像是做不到的行和列必须分开删a(i,:)=[];a(:,j)=[];
fork=1:length(a)tmp=a{k};b(:,k)=tmp(:,end);endb矩阵就是把a中所有矩阵的最后一列放在一起拼成的矩阵.再问:>>a={}formi=1:18ifmi
A=randint(8,2,[01]);%A换成自己矩阵C=unique(a,'rows')再问:能不能解释一下具体什么意思再答:C=unique(A,'rows')forthematrixA,ret
m为矩阵,要删除列a与b,这样就可以了.m(:,a)=[];m(:,b)=[];同时删除:m(:,[a,b])=[];
有必要搞那么复杂吗?一个语句就可以了:reshape(kk.',[1 270*8])
a=[123454321];a(3)=[];a=[123454321];a(a==3)=[];我不知道你说的是哪种情况,第一个是把指定位置的元素删掉,第二个是把指定大小的元素删掉!祝你学习愉快!
给你一个例子A=['12'',''54'',''59';'52'',''51'',''53']str2num(A)可以看出把字符串转化为数值时,自动的删除了都逗号