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

2025-04-18 12:35:45

1、这里我们只给出一个例子。aa=randn(1000,1)/10;

2、给aa人为的加入几个异常点:aa(100) = aa猾诮沓靥(100)+3;aa(301) = aa(301)+5;aa(501) = aa(501)-14;aa(781) = aa(781)-2;plot(aa);

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

3、可以看一下aa的直方分布图;hist(aa,100);

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

4、这个数据还不错;但是可以通过其他方式来对数据进行处理。从科学角度来看,需要计算其标准偏差,三倍标准偏差为限制,超出范围的即作为异常数据进行剔除。

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

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

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

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

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

7、请不要只看图形,还要看一下坐标轴。数据量越大,异常值越明显。

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

使用matlab剔除数据中的异常点
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢