拉依达准则运用3篇.docx

上传人:b****5 文档编号:5630740 上传时间:2022-12-29 格式:DOCX 页数:8 大小:59.46KB
下载 相关 举报
拉依达准则运用3篇.docx_第1页
第1页 / 共8页
拉依达准则运用3篇.docx_第2页
第2页 / 共8页
拉依达准则运用3篇.docx_第3页
第3页 / 共8页
拉依达准则运用3篇.docx_第4页
第4页 / 共8页
拉依达准则运用3篇.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

拉依达准则运用3篇.docx

《拉依达准则运用3篇.docx》由会员分享,可在线阅读,更多相关《拉依达准则运用3篇.docx(8页珍藏版)》请在冰豆网上搜索。

拉依达准则运用3篇.docx

拉依达准则运用3篇

拉依达准则运用(3篇)

篇一:

拉依达准则——(3σ)

引言

有时在数据分析上,需要对某些偏离点进行剔除,我们可以考虑拉依达法则(3σ),以提高数据的准确性。

概念

假设一组检测数据只含有随机误差,对其进行计算处理得到标准偏差,按一定概率确定一个区间,认为凡超过这个区间的误差,就不属于随机误差而是粗大误差,含有该误差的数据应予以剔除。

这种判别处理原理及方法仅局限于对正态或近似正态分布的样本数据处理,它是以测量次数充分大为前提。

此方法对于数据量较小的数据集是不可靠的,需要选择其他方法进行剔除偏离点。

使用原理

在正态分布中σ代表标准差,μ代表均值。

x=μ即为图像的对称轴

3σ原则:

数值分布在(μ-σ,μ+σ)中的概率为0.6826

数值分布在(μ-2σ,μ+2σ)中的概率为0.9544

数值分布在(μ-3σ,μ+3σ)中的概率为0.9974

可以认为,y的取值几乎全部集中在(μ-3σ,μ+3σ)区间内,超出这个范围的可能性仅占不到0.3%。

剔除偏离点:

设对被测量进行等精度测量,独立得到x1,x2,…,xn,算出其算术平均值x及剩余误差vi=xi-x(i=1,2,…,n),并计算出标准差σ,若某个测量值xi的剩余误差vi(1<=i<=n),满足下式

∣vi∣=∣xi−x∣>3σ|v_i|=|x_i-x|>3\sigma∣vi​∣=∣xi​−x∣>3σ

则认为xi应予剔除。

演示如下代码

篇二:

C#使用拉依达准则(3σ准则)剔除异常数据(.Net剔除一组数据中的奇异值)

1、问题的提出:

电池生产中,遇到一批电池的测量结果数据:

电压值

电池个数

电压值

电池个数

电压值

电池个数

电压值

电池个数

0.056

1

 

4.09

1

 

4.146

17

 

4.174

13434

0.321

1

 

4.094

1

 

4.147

17

 

4.175

13973

0.767

1

 

4.099

2

 

4.148

19

 

4.176

13339

0.972

1

 

4.112

1

 

4.149

23

 

4.177

12275

3.098

1

 

4.119

3

 

4.15

26

 

4.178

10309

3.187

1

 

4.12

1

 

4.151

40

 

4.179

8376

3.319

1

 

4.121

1

 

4.152

50

 

4.18

6324

3.526

1

 

4.122

3

 

4.153

75

 

4.181

4667

3.53

1

 

4.125

3

 

4.154

84

 

4.182

3340

3.532

1

 

4.126

2

 

4.155

100

 

4.183

2358

3.54

1

 

4.127

1

 

4.156

118

 

4.184

1719

3.541

1

 

4.128

2

 

4.157

153

 

4.185

1199

3.544

1

 

4.129

3

 

4.158

173

 

4.186

839

3.545

2

 

4.13

2

 

4.159

248

 

4.187

622

3.832

1

 

4.132

2

 

4.16

335

 

4.188

417

3.928

1

 

4.133

2

 

4.161

419

 

4.189

304

3.93

1

 

4.134

4

 

4.162

540

 

4.19

170

3.951

1

 

4.135

1

 

4.163

731

 

4.191

124

3.963

1

 

4.136

5

 

4.164

962

 

4.192

77

3.972

1

 

4.137

4

 

4.165

1359

 

4.193

43

3.973

2

 

4.138

6

 

4.166

1846

 

4.194

44

4.045

1

 

4.139

9

 

4.167

2621

 

4.195

25

4.046

1

 

4.14

2

 

4.168

3728

 

4.196

20

4.079

1

 

4.141

6

 

4.169

5086

 

4.197

8

4.085

1

 

4.142

4

 

4.17

6822

 

4.198

9

4.087

1

 

4.143

6

 

4.171

8649

 

4.199

5

4.088

1

 

4.144

13

 

4.172

10210

 

4.2

3

4.089

1

 

4.145

14

 

4.173

12072

 

 

 

其中,有一部分电池的电压出现过低和过高的情况,并不符合正态分布。

现在需要剔除这些异常的电池数据。

2、方法原理:

3σ准则又称为拉依达准则,它是先假设一组检测数据只含有随机误差,对其进行计算处理得到标准偏差,按一定概率确定一个区间,认为凡超过这个区间的误差,就不属于随机误差而是粗大误差,含有该误差的数据应予以剔除。

在正态分布中σ代表标准差,μ代表均值。

x=μ即为图像的对称轴

3σ原则:

数值分布在(μ-σ,μ+σ)中的概率为0.6827

数值分布在(μ-2σ,μ+2σ)中的概率为0.9544

数值分布在(μ-3σ,μ+3σ)中的概率为0.9974

可以认为,Y的取值几乎全部集中在(μ-3σ,μ+3σ)区间内,超出这个范围的可能性仅占不到0.3%。

3、C#的具体实现:

//定义电压-数量关系的类

   publicclassVoltageCount

   {

       publicDoubleVoltage{get;set;}

       publicintCountV{get;set;}

       publicVoltageCount()

       {

       }

       publicVoltageCount(Doublevoltage,intcountV)

       {

           this.Voltage=voltage;

           this.CountV=countV;

       }

   }

//关键类使用拉依达准则(3σ准则)剔除数据异常

usingSystem;

usingSystem.Collections;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Text;

namespacePhoto.QQAA.Net.Helper

{

   ///

   ///使用拉依达准则(3σ准则)剔除数据异常

   ///

   publicclassExceptionVoltageHelper

   {

       ListlistVoltageCount;

       doubleaverage=0.0;

       int_badDataCount=-1;//奇异值个数

       ///

       ///获取奇异值个数

       ///

       publicintBadDataCount

       {

           get{return_badDataCount;}

       }

       publicExceptionVoltageHelper(Listlist)

       {

           this.listVoltageCount=list;

           SetAverage();

       }

       ///

       ///取得平均电压值

       ///

       ///

       protecteddoubleGetAvgVoltage()

       {

           doubleavg=0;

           doubletotal=0;

           intallCount=0;

           foreach(VoltageCountvcinlistVoltageCount)

           {

               doublev=vc.Voltage;

               intc=vc.CountV;

               total+=v*c;

               allCount+=c;

           }

           avg=total/(allCount*1.0);

           returnMath.Round(avg,3,MidpointRounding.AwayFromZero);

       }

       ///

       ///平均值

       ///

       ///

       voidSetAverage()

       {

           this.average=GetAvgVoltage();

       }

       ///

       ///标准差

       ///

       ///

       doubleStandardDeviation()

       {

           ListlistDataV=newList();

           foreach(VoltageCountvcinthis.listVoltageCount)

           {

               doublev=vc.Voltage;

               intcountV=vc.CountV;

               for(inti=0;i

               {

                   listDataV.Add((v-this.average)*(v-this.average));

               }

           }

           doublesumDataV=listDataV.Sum();

           doublestd=Math.Sqrt(sumDataV/(listDataV.Count-1));

           returnstd;

       }

       publicListGetGoodList()

       {

           _badDataCount=0;

           doublesd3=StandardDeviation()*3;//3倍标准差

           ListlistVC=newList();

           foreach(VoltageCountvcinthis.listVoltageCount)

           {

               if(Math.Abs(vc.Voltage-this.average)<=sd3)

               {

                   listVC.Add(vc);

               }

               else

               {

                   _badDataCount+=vc.CountV;

               }

           }

           returnlistVC;

       }

   }

}

4、局限性及注意事项:

本3σ法则仅局限于对正态或近似正态分布的样本数据处理,且适用于有较多组数据的时候。

这种判别处理原理及方法是以测量次数充分大为前提的,当测量次数的情形用准则剔除粗大误差是不够可靠的。

因此,在测量次数较少的情况下,最好不要选用准则,而用其他准则。

篇三:

JAVA使用:

3σ规则、依据拉依达准则来剔除异常值程序

3σ原则为

数值分布在(μ-σ,μ+σ)中的概率为0.6827

数值分布在(μ-2σ,μ+2σ)中的概率为0.9545

数值分布在(μ-3σ,μ+3σ)中的概率为0.9973

可以认为,Y的取值几乎全部集中在(μ-3σ,μ+3σ)区间内,超出这个范围的可能性仅占不到0.3%.

 

public classPauta{  //创建拉依达类

    privatedoublearr[];      //接受原始数组

    publicPauta(doubletemp[]){//利用构造方法来得的原始数组

        this.arr=temp;

        System.out.print("原始数组:

");

        for(doublex:

arr){

        System.out.print(x+"、");

        }

        System.out.println();

    }

    publicdoubleaverage(){  //原始数组的算数平均值方法

        doublesum=0;

        for(intx=0;x

            sum+=arr[x];

        }

        returnsum/arr.length;

        

    }

    publicdouble[]residualError(){//原始数组的剩余误差方法

        doublerE[]=newdouble[]{};

        for(intx=0;x

            rE[x]=arr[x]-average();

        }

        returnrE;

    }

    publicdoublestandardVariance(){//原始数组的标准方差值计算方法

        doublesum=0;

        for(intx=0;x

            sum+=Math.pow(arr[x]-average(),2);

        }

        returnMath.sqrt(sum/(arr.length-1));

        

    }

    publicvoidjudge(){          //判断异常值方法,若异常,则输出

        for(intx=0;x

            if(Math.abs(arr[x]-average())>(3*standardVariance())){

                System.out.println("该数组中的第"+(x+1)+"个元素属于异常值");

            }

        }

    }

}

publicclassclient{

    publicstaticvoidmain(Stringargs[]){

        doubledata[]=newdouble[]{1,2,8,10,8,5,2,4,6,11,15};//原始数组

        Pautapau=newPauta(data);//原始数组封装后输出

        System.out.println("算数平均值:

"+pau.average());//算数平均值

        /*此处的剩余误差输出略*/

        System.out.println("标准方差:

"+pau.standardVariance());//标准方差

        pau.judge();//判断异常值方法

    }

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 远程网络教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1