当前位置:网站首页>数据分析系列 之3σ规则/依据拉依达准则来剔除异常值
数据分析系列 之3σ规则/依据拉依达准则来剔除异常值
2022-07-07 21:52:00 【琅晓琳】
1 相关原理
3σ原则为
数值分布在(μ-σ,μ+σ)中的概率为0.6827
数值分布在(μ-2σ,μ+2σ)中的概率为0.9545
数值分布在(μ-3σ,μ+3σ)中的概率为0.9973
可以认为,Y 的取值几乎全部集中在(μ-3σ,μ+3σ)区间内,超出这个范围的可能性仅占不到0.3%.
2 代码实现
public class Pauta{
//创建拉依达类
private double arr[]; //接受原始数组
public Pauta(double temp[]) {
//利用构造方法来得的原始数组
this.arr=temp;
System.out.print("原始数组:");
for(double x:arr) {
System.out.print(x+"、");
}
System.out.println();
}
public double average() {
//原始数组的算数平均值方法
double sum=0;
for(int x=0;x<arr.length;x++)
sum+=arr[x];
}
return sum/arr.length;
}
public double[] residualError() {
//原始数组的剩余误差方法
double rE[]=new double[] {
};
for(int x=0;x<arr.length;x++) {
rE[x]=arr[x]-average();
}
return rE;
}
public double standardVariance() {
//原始数组的标准方差值计算方法
double sum=0;
for(int int x=0;x<arr.length;x++) {
sum+=Math.pow(arr[x]-average(),2);
}
return Math.sqrt(sum/(arr.length-1));
}
public void judge() {
//判断异常值方法,若异常,则输出
for(int int x=0;x<arr.length;x++) {
if(Math.abs(arr[x]-average())>(3*standardVariance())) {
System.out.println("该数组中的第"+(x+1)+"个元素属于异常值");
}
}
}
}
public class client{
public static void main(String args[]) {
double data[]=new double[] {
1,2,8,10,8,5,2,4,6,11,15};//原始数组
Pauta pau=new Pauta(data);//原始数组封装后输出
System.out.println("算数平均值:"+pau.average());//算数平均值
/*此处的剩余误差输出略*/
System.out.println("标准方差:"+pau.standardVariance());//标准方差
pau.judge();//判断异常值方法
}
}
参考资料:
https://wenku.baidu.com/view/cce8bacc142ded630b1c59eef8c75fbfc77d9407.html JAVA使用:3σ规则、依据拉依达准则来剔除异常值程序
边栏推荐
猜你喜欢
Solution of intelligent supply chain collaboration platform in electronic equipment industry: solve inefficiency and enable digital upgrading of industry
SAP HR labor contract information 0016
B_ QuRT_ User_ Guide(37)
Digital procurement management system for fresh food industry: help fresh food enterprises solve procurement problems and implement online procurement throughout the process
C number of words, plus ¥, longest word, average value
UE4_ Ue5 panoramic camera
0-1背包问题
[stm32+esp8266 connects to Tencent cloud IOT development platform 3] stm32+esp8266-01s dynamically registers devices on Tencent cloud (at instruction mode) -- with source code
Navicat connects Oracle
Lm12 rolling heikin Ashi double K-line filter
随机推荐
Possible SQL for Oracle table lookup information
List. How to achieve ascending and descending sort() 2020.8.6
家用电器行业渠道商协同系统解决方案:助力家电企业快速实现渠道互联网化
USB (XVI) 2022-04-28
Extract the file name under the folder under win
建筑建材行业SRM供应商云协同管理平台解决方案,实现业务应用可扩展可配置
SQL database execution problems
Summary of SQL single table query 2020.7.27
ASP. Net query implementation
POJ2392 SpaceElevator [DP]
HDU 4747 mex "recommended collection"
The file format and extension of XLS do not match
UE4_ Use of ue5 blueprint command node (turn on / off screen response log publish full screen display)
B_ QuRT_ User_ Guide(40)
B_ QuRT_ User_ Guide(37)
[stm32+esp8266 connects to Tencent cloud IOT development platform 3] stm32+esp8266-01s dynamically registers devices on Tencent cloud (at instruction mode) -- with source code
【leetcode】day1
Open source hardware small project: anxinco esp-c3f control ws2812
Navicat connects Oracle
C # exchange number, judge to pass the exam