如何计算异常值

异常值就是和其他样本数据有显著差异的值。这个词在统计学中经常用到,可以表示数据异常或测量错误。明白算异常值的方法,对于正确理解数据非常有用,而且会引出更精确的结论。以下介绍一个很简单的算异常值的过程和方法。

  1. # 引用numpy模块
  2. import numpy as np
  3.  
  4. #求数组a的中位数
  5. np.median(a)
  6.  
  7. #求数组a的四分位数
  8. np.percentile(a, [25, 50, 75])

 

 

步骤

  1.  
    了解如何认出潜在异常值。计算之前先辨认数据中的潜在异常值。比如一列数据,表示的是房间内12个东西的温度。如果其中11个的温度在70华氏度(21摄氏度左右)内,第12个却跑到300华氏度(约150摄氏度)了,那你可以粗略判断这是一个异常值。
     
  2.  
    把数据从小到大排列。以以上数据为例,继续考虑房间内物体温度: {71, 70, 73, 70, 70, 69, 70, 72, 71, 300, 71, 69},变更顺序为: {69, 69, 70, 70, 70, 70, 71, 71, 71, 72, 73, 300}.
     
  3.  
    计算中位数。中位数是一串数据中间的一个数据点,如果数据总数是偶数,那么中间两位数的平均数就是中位数。上面数据中,中间两项是70、71,则中位数是((70 + 71) / 2)或70.5
     
  4.  
    计算下四分位数,这里设置为Q1,表示总数据最小的25%的数据在这个点以下。在上面例子中,又有两个数据要被平分,即((70 + 70) / 2) 或 70
     
  5.  
    计算上四分位数,设置为Q3,表示最大的25%数据都在这个点以上。本例子中Q3 是71、72的平均数,即 71.5
     
  6.  
    找出数据的“内围”。第一步是把Q1和Q3的差(四分位差)乘以1.5。上面的例子中,四分位差是(71.5 - 70)得 1.5。再乘以1.5 得 2.25 ,加上Q3 ,用Q1 减去这个和,得到内围。本例中内围是67.75 and 73.75.

    • 任何在这个范围外的数字都是“平稳界外值”。本例子中,只有300华氏度是在范围以外的,即是所谓的平稳界外值。
     
  7.  
    找出数据外围。和内围方法类似,不过这里要将四分位差乘以3 而非1.5。乘以3即(1.5 * 3) 得到 4.5。得到外围是65.5 、 76

    • 任何这个范围以外的数字,都算是“极端界外值”,300度也在这个范围外,因此也算“极端界外值”

Tukey‘s test方法 异常值的更多相关文章

  1. Bonferroni校正法

    Bonferroni校正:如果在同一数据集上同时检验n个独立的假设,那么用于每一假设的统计显著水平,应为仅检验一个假设时的显著水平的1/n http://baike.baidu.com/view/12 ...

  2. 数据挖掘实战<1>:数据质量检查

    数据行业有一句很经典的话--"垃圾进,垃圾出"(Garbage in, Garbage out, GIGO),意思就是,如果使用的基础数据有问题,那基于这些数据得到的任何产出都是没 ...

  3. 数据准备<1>:数据质量检查-理论篇

    数据行业有一句很经典的话--"垃圾进,垃圾出"(Garbage in, Garbage out, GIGO),意思就是,如果使用的基础数据有问题,那基于这些数据得到的任何产出都是没 ...

  4. 探索性数据分析EDA综述

    目录 1. 数据探索的步骤和准备 2. 缺失值处理 为什么需要处理缺失值 Why data has missing values? 缺失值处理的技术 3. 异常值检测和处理 What is an ou ...

  5. javaSE27天复习总结

    JAVA学习总结    2 第一天    2 1:计算机概述(了解)    2 (1)计算机    2 (2)计算机硬件    2 (3)计算机软件    2 (4)软件开发(理解)    2 (5) ...

  6. 异常值监测的方法 Tukey test

    参考: https://www.zhihu.com/question/38066650

  7. pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)

    pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...

  8. kaggle信用卡欺诈看异常检测算法——无监督的方法包括: 基于统计的技术,如BACON *离群检测 多变量异常值检测 基于聚类的技术;监督方法: 神经网络 SVM 逻辑回归

    使用google翻译自:https://software.seek.intel.com/dealing-with-outliers 数据分析中的一项具有挑战性但非常重要的任务是处理异常值.我们通常将异 ...

  9. 异常值检测方法(Z-score,DBSCAN,孤立森林)

     机器学习_深度学习_入门经典(博主永久免费教学视频系列) https://study.163.com/course/courseMain.htm?courseId=1006390023&sh ...

随机推荐

  1. 好消息,Manjaro Linux 18 已正式发布!

    导读 Manjaro Linux 18 已正式发布!Xfce 版本仍然是旗舰,Manjaro 为其提供了优雅且领先的集成体验.这一版本搭载 Xfce 4.13. 这一版本主要专注于在桌面和窗口管理器上 ...

  2. python---面对对象的组合

    组合 给一个类的对象封装一个属性,这个属性是另一个类的对象,这样我们在调用这个属性时就指向了另一个类的对象,这样我们就可以调用另一个类的方法. 模拟英雄联盟写一个游戏人物的类# 要求:# (1)创建一 ...

  3. BZOJ3881[Coci2015]Divljak——AC自动机+树状数组+LCA+dfs序+树链的并

    题目描述 Alice有n个字符串S_1,S_2...S_n,Bob有一个字符串集合T,一开始集合是空的. 接下来会发生q个操作,操作有两种形式: “1 P”,Bob往自己的集合里添加了一个字符串P. ...

  4. eclipse svn同步资源库时忽略某些不需要提交文件类型和文件夹

    项目开发中,开发人员经常用SVN来管理代码,在和服务器同步时,每次都看到一堆.class,.log,target等文件,这样很不舒服. 解决方法: 打开:window-->preferences ...

  5. 自学Linux Shell10.1-使用编辑器vim

    点击返回 自学Linux命令行与Shell脚本之路 10.1-使用编辑器vim 所有的 Unix系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在.但是目前我们使用比较多的是 vim 编辑 ...

  6. emwin之多次删除同一窗口导致死机现象

    @218-7-24 [现象] 使用函数 GUI_EndDialog() 多次删除同一窗口,导致系统死机,调试发现代码会卡死在以下两处 > 1.启动文件中 > 2.HardFault中断内 ...

  7. 洛谷 P2058 海港 解题报告

    P2058 海港 题目描述 小K是一个海港的海关工作人员,每天都有许多船只到达海港,船上通常有很多来自不同国家的乘客. 小K对这些到达海港的船只非常感兴趣,他按照时间记录下了到达海港的每一艘船只情况: ...

  8. bzoj3672/luogu2305 购票 (运用点分治思想的树上cdq分治+斜率优化dp)

    我们都做过一道题(?)货币兑换,是用cdq分治来解决不单调的斜率优化 现在它放到了树上.. 总之先写下来dp方程,$f[i]=min\{f[j]+(dis[i]-dis[j])*p[i]+q[i]\} ...

  9. 【BZOJ1558】等差数列(线段树)

    [BZOJ1558]等差数列(线段树) 题面 BZOJ 题解 可以说这道题已经非常毒瘤了 怎么考虑询问操作? 如果直接将一段数分解为等差数列? 太麻烦了.... 考虑相邻的数做差, 这样等差数列变为了 ...

  10. POJ1163(简单的DP)

    题目链接:http://poj.org/problem?id=1163 Description 73 88 1 02 7 4 44 5 2 6 5 (Figure 1) Figure 1 shows ...