Tukey‘s test方法 异常值
如何计算异常值
异常值就是和其他样本数据有显著差异的值。这个词在统计学中经常用到,可以表示数据异常或测量错误。明白算异常值的方法,对于正确理解数据非常有用,而且会引出更精确的结论。以下介绍一个很简单的算异常值的过程和方法。
# 引用numpy模块
import numpy as np #求数组a的中位数
np.median(a) #求数组a的四分位数
np.percentile(a, [25, 50, 75])
步骤
- 了解如何认出潜在异常值。计算之前先辨认数据中的潜在异常值。比如一列数据,表示的是房间内12个东西的温度。如果其中11个的温度在70华氏度(21摄氏度左右)内,第12个却跑到300华氏度(约150摄氏度)了,那你可以粗略判断这是一个异常值。
- 把数据从小到大排列。以以上数据为例,继续考虑房间内物体温度: {71, 70, 73, 70, 70, 69, 70, 72, 71, 300, 71, 69},变更顺序为: {69, 69, 70, 70, 70, 70, 71, 71, 71, 72, 73, 300}.
- 计算中位数。中位数是一串数据中间的一个数据点,如果数据总数是偶数,那么中间两位数的平均数就是中位数。上面数据中,中间两项是70、71,则中位数是((70 + 71) / 2)或70.5
- 计算下四分位数,这里设置为Q1,表示总数据最小的25%的数据在这个点以下。在上面例子中,又有两个数据要被平分,即((70 + 70) / 2) 或 70
- 计算上四分位数,设置为Q3,表示最大的25%数据都在这个点以上。本例子中Q3 是71、72的平均数,即 71.5
- 找出数据的“内围”。第一步是把Q1和Q3的差(四分位差)乘以1.5。上面的例子中,四分位差是(71.5 - 70)得 1.5。再乘以1.5 得 2.25 ,加上Q3 ,用Q1 减去这个和,得到内围。本例中内围是67.75 and 73.75.
- 任何在这个范围外的数字都是“平稳界外值”。本例子中,只有300华氏度是在范围以外的,即是所谓的平稳界外值。
- 找出数据外围。和内围方法类似,不过这里要将四分位差乘以3 而非1.5。乘以3即(1.5 * 3) 得到 4.5。得到外围是65.5 、 76
- 任何这个范围以外的数字,都算是“极端界外值”,300度也在这个范围外,因此也算“极端界外值”
Tukey‘s test方法 异常值的更多相关文章
- Bonferroni校正法
Bonferroni校正:如果在同一数据集上同时检验n个独立的假设,那么用于每一假设的统计显著水平,应为仅检验一个假设时的显著水平的1/n http://baike.baidu.com/view/12 ...
- 数据挖掘实战<1>:数据质量检查
数据行业有一句很经典的话--"垃圾进,垃圾出"(Garbage in, Garbage out, GIGO),意思就是,如果使用的基础数据有问题,那基于这些数据得到的任何产出都是没 ...
- 数据准备<1>:数据质量检查-理论篇
数据行业有一句很经典的话--"垃圾进,垃圾出"(Garbage in, Garbage out, GIGO),意思就是,如果使用的基础数据有问题,那基于这些数据得到的任何产出都是没 ...
- 探索性数据分析EDA综述
目录 1. 数据探索的步骤和准备 2. 缺失值处理 为什么需要处理缺失值 Why data has missing values? 缺失值处理的技术 3. 异常值检测和处理 What is an ou ...
- javaSE27天复习总结
JAVA学习总结 2 第一天 2 1:计算机概述(了解) 2 (1)计算机 2 (2)计算机硬件 2 (3)计算机软件 2 (4)软件开发(理解) 2 (5) ...
- 异常值监测的方法 Tukey test
参考: https://www.zhihu.com/question/38066650
- pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)
pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...
- kaggle信用卡欺诈看异常检测算法——无监督的方法包括: 基于统计的技术,如BACON *离群检测 多变量异常值检测 基于聚类的技术;监督方法: 神经网络 SVM 逻辑回归
使用google翻译自:https://software.seek.intel.com/dealing-with-outliers 数据分析中的一项具有挑战性但非常重要的任务是处理异常值.我们通常将异 ...
- 异常值检测方法(Z-score,DBSCAN,孤立森林)
机器学习_深度学习_入门经典(博主永久免费教学视频系列) https://study.163.com/course/courseMain.htm?courseId=1006390023&sh ...
随机推荐
- 解决vmware与主机无法连通的问题
我们选择NAT方式,来实现Ubuntu的静态IP地址配置. 打开VMware,在顶部依次选择:编辑 > 虚拟网路编辑器,打开虚拟网路编辑器:去掉VMnet0和VMnet1,只保留VMnet8.然 ...
- js timeout
setTimeOut(“”,毫秒):調用函數時,不是立刻執行,而是間隔一定的時間后在執行: clearTimeOut():清除計時器
- Java之数组遍历
package basic; //数组遍历方法 public class ForEach { public static void main(String[] args) { // 原始数组 Stri ...
- 17mysql2█▓
一.数据库的查询用法 1. 数据表记录的查询: 运算符.虑重.列运算.别名.排序.聚合函数.分组 1.1数据准备 create table exam( id int primary key aut ...
- cf500E New Year Domino (倍增)
先用线段树处理出推倒某一个后能覆盖到的最右端的位置R(绝对不能是最右边的那个骨牌,因为有可能右面的很短,左面的巨长(R不随L单调),后面算花费又需要用到这个位置),之后可以花费R到第一个比R大的左端点 ...
- DataFrame 数据去重
df.head() >>> Price Seqno Symbol time 0 1623.0 0.0 APPL 1473411962 1 1623.0 0.0 APPL 147341 ...
- 牛客网小白月赛5I区间(差分数组)
链接:https://www.nowcoder.com/acm/contest/135/I来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 32768K,其他语言65536 ...
- Java NIO -- 阻塞和非阻塞
传统的 IO 流都是阻塞式的.也就是说,当一个线程调用 read() 或 write()时,该线程被阻塞,直到有一些数据被读取或写入,该线程在此期间不能执行其他任务.因此,在完成网络通信进行 IO操作 ...
- 洛谷P3295 萌萌哒 并查集 + ST表
又切一道紫题!!! 成功的(看了一吨题解之后),我A掉了第二道紫题. 好,我们仔细观察,发现这是一个排列组合问题. 有些限定条件,要相等的地方,我们就用并查集并起来.最后一查有多少个并查集,就有多少个 ...
- 总算知道怎样从ImageMagick生成的数据转换成HICON: MagickGetImageBlob & LookupIconIdFromDirectoryEx
MagickSetImageFormat(mw, "ICO"); //设置这个后, MagickGetImageBlob 才能返回正确的值 size_t length; PBYTE ...