matlab 里怎样删除数组的某些行

作者&投稿:茌胖 (若有异议请与网页底部的电邮联系)
matlab 删除数组中满足一定条件的元素~

1、打开matlab,在命令行窗口中输入a=[1 5 6 7;8 12 14 16;6 3 5 7],创建一个3行4列的a矩阵。

2、输入x=find(a>10),找到a数组中大于10的元素的下标。

3、按回车键之后,可以看到找到大于10的元素下标,下标位置是按一列开始数,一列一列数的。

4、输入a(x)=[],将a数组中大于10的元素全部删除。

5、按回车键之后,可以看到a数组大于10的元素全部删除了。

X(i,:) = [];就可以了

matlab 里删除数组的某些行的方法:
d = data;
count = 1;
for i=1:100
if mod(i,3) ~= 0
d(count,:) = data(i,:);
count = count + 1;
end

end
d = d(1:66,:);

思路是,循环一百次,遇到可以除尽3的就不要,只要不是可以除尽的就放到另外一个函数里。一开始d=data是确定这两个是同样大小的。最后取新函数的前66行。

你好,解决方法如下。
d = data;
count = 1;
for i=1:100
if mod(i,3) ~= 0
d(count,:) = data(i,:);
count = count + 1;
end

end
d = d(1:66,:);

我这没法测试,思路是,循环一百次,遇到可以除尽3的就不要,只要不是可以除尽的就放到另外一个函数里。一开始d=data是确定这两个是同样大小的。最后取新函数的前66行。

这个很简单,你将原先的数据删掉而且还要保留该行元素的位置不变
那就不要删掉原先的元素的位置,改成0即可
我随便给的数据你运行一下看看:
data=5*ones(100,6);
for i=1:33
data(i*3,:)=zeros(1,6)
end
这个data是不是你想要的

data(1:3:100,:) = [];

data(3:3:end,:)=[]


二道江区18629417489: 如何去除数组中不想要的数 – MATLAB中文论坛 -
席宁氨肽: function [ ary2 ] = Delete( ary1, idx ) % delete ary1(idx) % return ary2 without ary1(idx) ary2 = zeros(1,length(ary1)-1); ary2(1:idx-1) = ary1(1:idx-1);ary2(idx:end) = ary1(idx+1:end);end

二道江区18629417489: Matlab 数组元素删除多个元素 -
席宁氨肽: 这个问题对matlab来说确实太简单了 你的目的无非就是要删除a中的2 一句话可以实现: a(a==2)=[] 这就可以删除a中等于2的元素该方法等价于: id=find(a==2);% 查找下标 a(id)=[]; %删除指定下标元素类似的 a(a<3)=[] 就是删除数组a中小于3的元素,对你给的数据而言,结果一样

二道江区18629417489: MATLAB中一维数组如何将某个不合适的数删除,怎么通过循环将数组中的不合适的数删除?
席宁氨肽: 如需将一维数组A中第n个数删除 可使用 A(n)=[]; 通过循环 可将不符合的数据全部删除. i=0; while i&lt;=length(A) if A(i)满足不合适条件 A(i)=[]; else i=i+1; end end

二道江区18629417489: matlab中如何删除掉数组中的重复元素,只要出现重复就全部删掉 -
席宁氨肽: unique函数用来去除矩阵A中重复的元素, 比如说A=[1,2,3,3,4],那么unique(A)=[1,2,3,4]; 如果A=[1,2,3;3,4,5],那么unique(A)=[1,2,3,4,5]; unique(A,'rows')用来去除矩阵A中重复的行, 比如说A=[1,2,3;4,5,6;1,2,3], 那么unique(A,'rows')=[1,2,3;4,5,6];综上,如果x=[1 1 1 2 2 2 3 3 3 3 3], 那么unique(x)=[1,2,3].

二道江区18629417489: matlab怎么去除数组中的某个值 -
席宁氨肽: 给你举个例子: a = [1,2,3,4]; a(2) = []; 执行后a=[1,3,4]

二道江区18629417489: matlab 删除数组中满足一定条件的元素 -
席宁氨肽: Locate=find(a>122) %a是存储数据的数组名,find是找到大于122的数的位置 a(Locate)=[]; %删除数组a中大于122的元素

二道江区18629417489: matlab中如何删除数组中字符??? -
席宁氨肽: 以下每一步只需几秒钟:新建m-file定义以下清除X Y Z =函数,保存到malab当前路径-------------------------------m-file----------------------------------- function A=clear_xyze(b) b=double(b); for n=1:(size(b,1)*size(b,2)) if ((b(n)>87)&(b(n)<91))|(b(n)==61) b(n)=...

二道江区18629417489: 用matlab如何删除数组中的重复元素 -
席宁氨肽: A = 1 2 3 2 1 5 1 4>> b=unique(A) b = 1 2 3 4 5

二道江区18629417489: 如何在MATLAB中删除数组中的特定元素? -
席宁氨肽: 1234nn = [2 4 6 8 10];S = [2 8]; [c, ia, ib] = intersect(nn,S); % 求 nn 与 S 的交集元素与索引值nn(ia) = 4、6 、10MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和...

二道江区18629417489: matlab 去掉数组中的某个值.比如:一个数组[2 3 4 5 6 ],删除第三个数,得到[2 3 5 6].程序如何,谢谢!
席宁氨肽: 直接赋空集 记A=[2 3 4 5 6 ], B=[2 3 5 6]. 令 A(3)=[ ] 输出A就是B

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网