所在位置:主页 > 数据处理 > 如何用格拉布斯法剔除异常值

如何用格拉布斯法剔除异常值

发布时间:2023-11-27 00:54来源:www.sf1369.com作者:宇宇

一、如何用格拉布斯法剔除异常值

在做测量不确定度的评定时,对于测量结果进行数据处理之前,往往要进行异常值的剔除工作。超出在规定条件下预期的误差叫做异常值。产生异常值的原因一般是由于疏忽、失误或突然发生的不该发生的原因造成的,如读错、记错、仪器示值突然跳动、突然震动、操作失误等。所以必须在计算测量结果及不确定度评定中要考虑异常值的判别和剔除。

异常值的判别方法也叫异常值检验法,即:判断异常值的统计检验法。其方法有很多种,例如格拉布斯法、狄克逊法、偏度-峰度法、拉依达法、奈尔法等等。每种方法都有其适用范围和优缺点。每种统计检验法都会犯错误1和错误2。但是有人做过统计,在所有方法中,格拉布斯法犯这两种错误的概率最小,所以本文介绍如何使用格拉布斯法来剔除异常值,其判别步骤如下:

1、假设现在有一组测量数据为:例如测量10次(n=10),获得以下数据:8.2、5.4、14.0、7.3、4.7、9.0、6.5、10.1、7.7、6.0。

2、排列数据:将上述测量数据按从小到大的顺序排列,得到4.7、5.4、6.0、6.5、7.3、7.7、8.2、9.0、10.1、14.0。可以肯定,可疑值不是最小值就是最大值。

3、计算平均值x-和标准差s:x-=7.89;标准差s=2.704。计算时,必须将所有10个数据全部包含在内。

4、计算偏离值:平均值与最小值之差为7.89-4.7=3.19;最大值与平均值之差为14.0-7.89=6.11。

5、确定一个可疑值:比较起来,最大值与平均值之差6.11大于平均值与最小值之差3.19,因此认为最大值14.0是可疑值。

6、计算Gi值:Gi=(xi-x- )/s;其中i是可疑值的排列序号——10号;因此G10=( x10-x- )/s=(14.0-7.89)/2.704=2.260。由于 x10-x-是残差,而s是标准差,因而可认为G10是残差与标准差的比值。下面要把计算值Gi与格拉布斯表给出的临界值GP(n)比较,如果计算的Gi值大于表中的临界值GP(n),则能判断该测量数据是异常值,可以剔除。但是要提醒,临界值GP(n)与两个参数有关:检出水平α (与置信概率P有关)和测量次数n (与自由度f有关)。

7、定检出水平α:如果要求严格,检出水平α可以定得小一些,例如定α=0.01,那么置信概率P=1-α=0.99;如果要求不严格,α可以定得大一些,例如定α=0.10,即P=0.90;通常定α=0.05,P=0.95。

8、查格拉布斯表获得临界值:根据选定的P值(此处为0.95)和测量次数n(此处为10),查格拉布斯表,横竖相交得临界值G95(10)=2.176。

9、比较计算值Gi和临界值G95(10):Gi=2.260,G95(10)=2.176,Gi>G95(10)。

10、判断是否为异常值:因为Gi>G95(10),可以判断测量值14.0为异常值,将它从10个测量数据中剔除。

11、余下数据考虑:剩余的9个数据再按以上步骤计算,如果计算的Gi>G95(9),仍然是异常值,剔除;如果Gi<G95(9),不是异常值,则不剔除。本例余下的9个数据中没有异常值。

二、SQL 中我想提取一段数据,并且去除那些有值为空的数据 怎么实现?

后面加上:

Where not

(

   (ZYLSL  is null or ZYLSL = '')

   or

   (ZYLSL  is null or ZYLSL = '')

)

三、VB 控件 List 中如何删除指定行数据。

用RemoveItem 方法,形式:列表框对象.RemoveItem 索引值

比如第五行 list1.RemoveItem 4

四、如何使用qlikview对数据库进行操作

比如你写了一个java程序,这个程序是读取文件,写到数据库中。那么这个程序怎么才能定时启动。是操作系统调度的问题了。不是java的问题。所以要用操作系统的调度。 如果在win服务器下,可以下一个cmd文件。文件中调用java程序,然后将cmd设置