使用matlab剔除数据中的异常点
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);
3、可以看一下aa的直方分布图;hist(aa,100);
4、这个数据还不错;但是可以通过其他方式来对数据进行处理。从科学角度来看,需要计算其标准偏差,三倍标准偏差为限制,超出范围的即作为异常数据进行剔除。
5、使用上述方法,可以看到新加入的数据几乎都是异常数据。看看结果:
6、然后看看直方分布图,好看了很多。
7、请不要只看图形,还要看一下坐标轴。数据量越大,异常值越明显。
8、最后看看剔除后的均值和标准偏差,可以看到,只剔除了几个数据,就把标准偏差减去了许多,数据也显得更加合理可信。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:44
阅读量:62
阅读量:29
阅读量:72
阅读量:85