您的位置首页生活百科

使用matlab剔除数据中的异常点

使用matlab剔除数据中的异常点

的有关信息介绍如下:

使用matlab剔除数据中的异常点

在采集的数据中,有些会是异常数据,因此需要进行剔除,这里给大家介绍如何分析和剔除异常数据。

这里我们只给出一个例子。

aa=randn(1000,1)/10;

给aa人为的加入几个异常点:

aa(100) = aa(100)+3;aa(301) = aa(301)+5;aa(501) = aa(501)-14;aa(781) = aa(781)-2;

plot(aa);

可以看一下aa的直方分布图;

hist(aa,100);

这个数据还不错;但是可以通过其他方式来对数据进行处理。

从科学角度来看,需要计算其标准偏差,三倍标准偏差为限制,超出范围的即作为异常数据进行剔除。

使用上述方法,可以看到新加入的数据几乎都是异常数据。

看看结果:

然后看看直方分布图,好看了很多。

请不要只看图形,还要看一下坐标轴。

数据量越大,异常值越明显。

最后看看剔除后的均值和标准偏差,可以看到,只剔除了几个数据,就把标准偏差减去了许多,数据也显得更加合理可信。