matlab中删除一个矩阵的某几行
来源:学生作业帮助网 编辑:作业帮 时间:2024/04/26 19:56:22
这个问题确实很有意思,我好歹弄出来了,不过还是用了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
都是一样的,没有本质区别,建议初学的时候打上逗号,这样方便数据纠错
可以用随机数发生器:)具体如下:data=randn(1000,1);%需要随机提取数据的矩阵randnum=randperm(length(data));%随机产生矩阵位置outdata=data(
你的行没有输入,应该是P_test=P[,1:60].如果只写1:60,matlab会认为是按位置从第一个元素开始先按列提取,再按行提取.找本matlab的书看吧,一般前几章就会有这部分内容.
max=a(1,1);fori=1:4forj=1:5ifa(i,j)>maxmax=a(i,j);m=i;n=j;endendendmaxm,n
加一句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
个人不赞成凭着感觉写代码又不作测试的回答方式 . 1、即使不考虑使用循环的要求,unique函数只保留独有的元素,即使不是相邻的相同元素也会被删掉.例如>>
因为循环时一遇到非2的元素就删除了,结果d变短了,而循环的长度还按原来的长度进行索引,所以超出了矩阵长度.d(find(d~=2))=[]或者,找出有2的元素个数,直接新建相等长度元素都为2的矩阵.d
阁下的问题可以参考使用meshz函数
a=[212456789];b=reshape(a,3,3);%3*3=9具体更加详细见helpreshape
X=[2902900290290028.99028.990028.99028.990028.99028.990028.99028.990028.99028.990028.99028.990028.99
同时删去?这好像是做不到的行和列必须分开删a(i,:)=[];a(:,j)=[];
functionX=deletenumbera=mod(A,2);b=find(a==1);A(b)=0;X=A;
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])=[];
a=[123454321];a(3)=[];a=[123454321];a(a==3)=[];我不知道你说的是哪种情况,第一个是把指定位置的元素删掉,第二个是把指定大小的元素删掉!祝你学习愉快!