Tukey‘s test方法 异常值

Easter79
• 阅读 852

如何计算异常值

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

 

# 引用numpy模块
import numpy as np

#求数组a的中位数
np.median(a)

#求数组a的四分位数
np.percentile(a, [25, 50, 75])

 Tukey‘s test方法 异常值

 Tukey‘s test方法 异常值

步骤

  1. Tukey‘s test方法 异常值

    了解如何认出潜在异常值。计算之前先辨认数据中的潜在异常值。比如一列数据,表示的是房间内12个东西的温度。如果其中11个的温度在70华氏度(21摄氏度左右)内,第12个却跑到300华氏度(约150摄氏度)了,那你可以粗略判断这是一个异常值。

  2. Tukey‘s test方法 异常值

    把数据从小到大排列。以以上数据为例,继续考虑房间内物体温度: {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. Tukey‘s test方法 异常值

    计算中位数。中位数是一串数据中间的一个数据点,如果数据总数是偶数,那么中间两位数的平均数就是中位数。上面数据中,中间两项是70、71,则中位数是((70 + 71) / 2)或70.5

  4. Tukey‘s test方法 异常值

    计算下四分位数,这里设置为Q1,表示总数据最小的25%的数据在这个点以下。在上面例子中,又有两个数据要被平分,即((70 + 70) / 2) 或 70

  5. Tukey‘s test方法 异常值

    计算上四分位数,设置为Q3,表示最大的25%数据都在这个点以上。本例子中Q3 是71、72的平均数,即 71.5

  6. Tukey‘s test方法 异常值

    找出数据的“内围”。第一步是把Q1和Q3的差(四分位差)乘以1.5。上面的例子中,四分位差是(71.5 - 70)得 1.5。再乘以1.5 得 2.25 ,加上Q3 ,用Q1 减去这个和,得到内围。本例中内围是67.75 and 73.75.

    • 任何在这个范围外的数字都是“平稳界外值”。本例子中,只有300华氏度是在范围以外的,即是所谓的平稳界外值。
  7. Tukey‘s test方法 异常值

    找出数据外围。和内围方法类似,不过这里要将四分位差乘以3 而非1.5。乘以3即(1.5 * 3) 得到 4.5。得到外围是65.5 、 76

    • 任何这个范围以外的数字,都算是“极端界外值”,300度也在这个范围外,因此也算“极端界外值”
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
RxJS学习笔记
  响应式编程是一种面向数据流和变更传播的异步编程范式(Wikipedia(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fzh.wikipedia.org%2Fwiki%2F%25E5%2593%258D%25E5%25BA%2594%25E5%25BC%258F%25E7%25BC%
Wesley13 Wesley13
3年前
java后台常用json解析工具问题小结
若排版紊乱可查看我的个人博客原文地址(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fyangshaoxiang.github.io%2F2017%2F10%2F20%2Fjava%25E5%2590%258E%25E5%258F%25B0%25E5%25B8%25B8%25E7%259
Wesley13 Wesley13
3年前
IDE、SDK、API
IDE集成开发环境(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fbaike.baidu.com%2Fitem%2F%25E5%25BC%2580%25E5%258F%2591%25E7%258E%25AF%25E5%25A2%2583)(IDE(https://www
Stella981 Stella981
3年前
React开发技术
React开发相关栈(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Freact.hnz.kim%2F%3Ffile%3D005React%25E9%25A1%25B9%25E7%259B%25AE%2F01React%25E5%25BC%2580%2
Wesley13 Wesley13
3年前
CDN帮助网站加速的方法
CDN(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.impervaincapsula.cn%2Fcdn%25E5%2586%2585%25E5%25AE%25B9%25E5%2588%2586%25E5%258F%2591%25E7%25BD%2591%25E7%25BB
Stella981 Stella981
3年前
Python和Anoconda和Pycharm安装教程
简介  Python是一种跨平台的计算机程序设计语言(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fbaike.baidu.com%2Fitem%2F%25E8%25AE%25A1%25E7%25AE%2597%25E6%259C%25BA%25E7%25A8%258B%25
Stella981 Stella981
3年前
90% 的 Java 程序员都说不上来的为何 Java 代码越执行越快(1)
麻烦大家帮我投一票(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Frank.juejin.cn%2F%3Fu%3D%25E5%25B9%25B2%25E8%25B4%25A7%25E6%25BB%25A1%25E6%25BB%25A1%25E5%25BC%25A0%25E5%259
Wesley13 Wesley13
3年前
rsync命令 常用工具命令
rsync命令常用工具命令(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fman.linuxde.net%2Fsub%2F%25e5%25b8%25b8%25e7%2594%25a8%25e5%25b7%25a5%25e5%2585%25b7%25e5%2591%25
Easter79
Easter79
Lv1
今生可爱与温柔,每一样都不能少。
文章
2.8k
粉丝
5
获赞
1.2k