如何计算异常值

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

# 引用numpy模块
import numpy as np #求数组a的中位数
np.median(a) #求数组a的四分位数
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. python下划线

    单下划线(_) 通常情况下,会在以下3种场景中使用: 1.在解释器中:在这种情况下,“_”代表交互式解释器会话中上一条执行的语句的结果.这种用法首先被标准CPython解释器采用,然后其他类型的解释器 ...

  2. JavaScript——AJAX

    AJAX技术是网页构建的必备技能之一,本文希望能帮助大家轻松的学习这项技术 一.什么是ajax? ajax(异步javascript xml) 能够刷新局部网页数据而不是重新加载整个网页. 二.如何使 ...

  3. CSS实现水平居中的5种思路

    前面的话 水平居中是经常遇到的问题.看似方法较多,条条大路通罗马.但系统梳理下,其实都围绕着几个思路展开.本文将介绍关于水平居中的5种思路 text-align [思路一]:在父元素中设置text-a ...

  4. BZOJ3417[Poi2013]Tales of seafaring——BFS

    题目描述 Young Bytensson loves to hang out in the port tavern, where he often listens to the sea dogs te ...

  5. Luogu3804 【模板】后缀自动机(后缀自动机)

    建出parent树统计即可.开始memcpy处写的是sizeof(son[y]),然后就T掉了……还是少用这种东西吧. 同时也有SA做法.答案子串一定是名次数组中相邻两个串的lcp.单调栈统计其是几个 ...

  6. BZOJ5286: [Hnoi2018]转盘 (线段树)

    题意 给你绕成一圈的物品共 \(n\) 个 , 然后从其中一个开始选 , 每次有两种操作 , 一是继续选择当前物品 , 二是选择这个后一个物品 . 选择后一个物品要求当前的时刻大于后一个的 \(T_i ...

  7. Leetcode 189.旋转数组 By Python

    给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: [1,2,3,4,5,6,7] 和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右旋转 1 ...

  8. [luogu1447][bzoj2005][NOI2010]能量采集

    题目大意 求出\(\sum_{i=1}^{n} \sum_{i=1}^{m} gcd(i,j)\times 2 -1\). 题解 解法还是非常的巧妙的,我们考虑容斥原理.我们定义\(f[i]\)表示\ ...

  9. CF1114B Yet Another Array Partitioning Task(贪心,构造题)

    我至今不敢相信我被这么一道简单的题卡了这么久……看来还是太弱了…… 题目链接:CF原网 题目大意:定义一个序列的“美丽度”为这个序列前 $m$ 大的数的和.现在有一个长度为 $n$ 的序列,你需要把它 ...

  10. ST表与树状数组

    ST表  st表可以解决区间最值的问题.可以做到O(nlogn)预处理 ,O(1)查询,但是不支持修改. st表的大概思路就是用st[i][j]来表示从i开始的2的j次方个树中的最值,查询时就从左端点 ...