jjdf.net
当前位置:首页 >> 如何去除矩阵中的异常数据 – MATLAB中文论坛 >>

如何去除矩阵中的异常数据 – MATLAB中文论坛

异常数据是指NaN么?是的话isnan(x)可以判断x是否为NaN,x是数组的话find(isnan(x))可以查找出NaN的位置

这个很简单,你看看那些重复了啊 a=unique(reshape(A,numel(A),1))

a=[1 2 3;0 0 0;2 1 6]; a(all(a==0,2),:)=[] ____________________ 如果是3维矩阵那就必须是某个面(整个2维矩阵)全部都是0,如果单一行是0,这个面的其他元素不为0,怎么能去掉呢,因为一删就是删一个面埃

去第n列可以这样。 S(:,n) = []; 去第m行可以这样。 S(m,:)=[]; 你可以试下。

可以通过find函数来搞定。 可以通过importdata('data.txt')将数据文件data.txt导入数组A中。 A=importdata('data.txt') 然后通过命令 z=find(~isnan(A)) 将A数组中NaN所在的编号给找出来; B=A(z) 就可以将A中所有的NaN值剔除掉了,如果希望得到...

data=[1,2,7,7,8,9,9,10,7,8,15,23]'; % 输入数据 mu = mean(data);% 计算平均值 a=4;%输入阈值 outliers = abs(data - mu) > a;%求出离群值的位置 nout = sum(outliers) % 计算离群值的个数并显示 data(outliers) = [];%去除离群值 data'%显示...

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

将某些元素从矩阵中删除,采用将其置为空矩阵即可。 如A=[1 2 3 4 5 6;7 8 9 10 11 12;13 14 15 1617 18]; A=(:,[2 4])=[] 第二条命令将删除A的第2列和第4列元素。

A(A

是在窗口自己输入?还是从excel读取数据? 窗口输入一个矩阵:A=[1,2;3,4;5,6] 矩阵的元素放在方括号[]里; 每行的元素之间用逗号或空格隔开; 矩阵的行与行之间用分号或回车符分割。

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