python异常值均值填充_Python 异常值分析

异常值分析是检验数据是否有录入错误以及含有不合常理的数据。忽视异常值的存在是十分危险的,不加剔除地把异常值包括进数据的计算分析过程中,对结果会产生不良影响;重视异常值的出现,分析其产生的原因,常常成为发现问题进而改进决策的契机。

异常值是指样本中的个别值,其数值明显偏离其余的观测值。异常值也称为离群点,异常值的分析也称为离群点分析。

(1)简单统计量分析

可以先对变量做一个描述性统计,进而查看哪些数据是不合理的。最常用的统计量是最大值和最小值,用来判断这个变量的取值是否超出了合理的范围。如客户年龄的最大值为199岁,则该变量的取值存在异常。

(2)3原则

如果数据服从正态分布,在3原则下,异常值被定义为一组测定值中与平均值的偏差超过3倍标准差的值。在正态分布的假设下,距离平均值3之外的值出现的概率为P(|x-|>3)≤0.003,属于极个别的小概率事件。

如果数据不服从正态分布,也可以用远离平均值的多少倍标准差来描述。

(3)箱型图分析

箱型图提供了识别异常值的一个标准:异常值通常被定义为小于QL-1.5IQR或大于QU+1.5IQR的值。QL称为下四分位数,表示全部观察值中有四分之一的数据取值比它小;QU称为上四分位数,表示全部观察值中有四分之一的数据取值比它大;IQR称为四分位数间距,是上四分位数QU与下四分位数QL之差,其间包含了全部观察值的一半。

箱型图依据实际数据绘制,没有对数据作任何限制性要求(如服从某种特定的分布形式),它只是真实直观地表现数据分布的本来面貌;另一方面,箱型图判断异常值的标准以四分位数和四分位距为基础,四分位数具有一定的鲁棒性:多达25%的数据可以变得任意远而不会很大地扰动四分位数,所以异常值不能对这个标准施加影响。由此可见,箱型图识别异常值的结果比较客观,在识别异常值方面有一定的优越性,如图3-1所示。

2998d75c34a3

如下数据:

日期 2015/2/10 2015/2/11 2015/2/12 2015/2/13 2015/2/14

销量额 2742.8 3014.3 865 3036.8

我们对其进行异常值分析

import pandas as pd

catering_sale = 'data2.xls' #餐饮数据

data = pd.read_excel(catering_sale, index_col = u'日期') #读取数据,指定“日期”列为索引列

import matplotlib.pyplot as plt #导入图像库

plt.rcParams['font.sans-serif'] = ['SimHei'] #用来正常显示中文标签

plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号

plt.figure() #建立图像

p = data.boxplot() #画箱线图,直接使用DataFrame的方法

x = p['fliers'][0].get_xdata() # 'flies'即为异常值的标签

y = p['fliers'][0].get_ydata()

y.sort() #从小到大排序,该方法直接改变原对象

#用annotate添加注释

#其中有些相近的点,注解会出现重叠,难以看清,需要一些技巧来控制。

#以下参数都是经过调试的,需要具体问题具体调试。

for i in range(len(x)):

if i>0:

plt.annotate(y[i], xy = (x[i],y[i]), xytext=(x[i]+0.05 -0.8/(y[i]-y[i-1]),y[i]))

else:

plt.annotate(y[i], xy = (x[i],y[i]), xytext=(x[i]+0.08,y[i]))

plt.show()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/398089.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

近期学习清单

2019独角兽企业重金招聘Python工程师标准>>> 框架 1.编写xml性质的ioc容器demo(附上博文一篇) 2.编写unity形式的ioc容器demo(附上博文一篇) 3.编写自己的orm框架 c#语言特性 1.大量阅读有关枚举类,查询类…

java同名函数_浅谈Java 继承接口同名函数问题

在Java中如果一个类同时继承接口A与B,并且这两个接口中具有同名方法,会怎么样?动手做实验:interface A{void fun();}interface B{void fun();}interface C extends A,B{}public class Test implements C{Overridepublic void fun(…

判断两个树是否互相镜像

// 3. 判断两个树是否互相镜像 public static boolean isMirrorRec(TreeNode r1, TreeNode r2){ // 如果两个树都是空树,则返回true if(r1null && r2null){ return true; } // 如果有一棵树是空树,另一颗不是,则返回false if(…

NopCommerce开源项目中很基础但是很实用的C# Helper方法

NopCommerce是啥? nopCommerce是最好的开源电子商务购物 系统。nopCommerce免费提供。今天,它是最好和最流行的ASP.NET电子商务软件。它已被下载超过180万次! nopCommerce是一个完全可定制的购物系统。它稳定且高度可用。nopCommerce是一个开…

java中如何设计答题小系统_java的一点问题,设计一个答题的程序

publicclassTestextendsJFrame{privateJPanelt_1newJPanel();privateJPanelt_0newJPanel();privateJLabelj_1newJLabel("题目1.");privateJLabelanwsernewJLabel("");privateButto...public class Test extends JFrame{private JPanel t_1new JPanel();pri…

写一个函数,输入int型,返回整数逆序后的字符串

2019独角兽企业重金招聘Python工程师标准>>> 刚刚看到一个面试题:写一个函数,输入int型,返回整数逆序后的字符串。如:输入123,返回“321”。 要求必须用递归,不能用全局变量,输入必须…

VS2013 使用QCustomPlot等三方库如何配置

QCustomPlot 是一个小巧好用的 QT 图表插件。用来画曲线图、趋势图、坐标图、柱状图等类似二维图的库。实现大部分的2维图形绘制。使用时,我们在程序中写完相关调用的代码后,只需将 QCunstomPlot.cpp 和 QCustomPlot.h 两个文件加入工程,正常…

Php RSS

RSS 聚合最近非常流行,因此至少对 RSS 及其工作方式有所了解是一名 PHP 开发人员的迫切需要。本文介绍了 RSS 基础知识、RSS 众多用途中的一些用途、如何使用 PHP 从数据库创建 RSS 提要,以及如何使用 XML_RSS 模块读取现有 RSS 提要并将其转换为 HTML。…

java 获取cer证书指纹_获取SSL证书的指纹

每一张SSL证书都有指纹(fingerprint)信息,若要获取,可以通过openssl或者certutil工具,分别在非Windows和Windows平台下使用基本语法:openssl x509 -fingerprint -in cerfile.crt若是报无法读取文件,那么极有可能是未指…

分布式配置管理平台Disconf

2019独角兽企业重金招聘Python工程师标准>>> 摘要 为了更好的解决分布式环境下多台服务实例的配置统一管理问题,本文提出了一套完整的分布式配置管理解决方案(简称为disconf[4],下同)。首先,实现了同构系统…

1.ELF之Elf Header

1.ELF的三个文件头 每个ELF文件有三个文件头,用来索引信息。 (1).EH ELF file Header 可在此读到PH,SH在文件中的offset。 (2).PH Program Header 与load program有关的索引,.o的PH为空。 (3).SH Section Header 组成此文件的所有secti…

UVA 11825 状态压缩DP+子集思想

很明显的状态压缩思想了。把全集分组,枚举每个集合的子集,看一个子集是否能覆盖所有的点,若能,则f[s]max(f[s],f[s^s0]1)。即与差集1比较。 这种枚举集合的思想还是第一次遇到,果然太弱了。。。。~~~~ 其中枚举集合 fo…

java路径1.7_Java环境配置原理详解1.Jdk安装目录文件说明:一般jdk安装目录及路径 Javajdk1.7.0_79lib,里面主要包含以下文件夹。bin...

Java环境配置原理详解1.Jdk安装目录文件说明:一般jdk安装目录及路径 Javajdk1.7.0_79lib,里面主要包含以下文件夹。bin:主要存放的是java工具中常用命令如:java,javac等。db:安装java db的路径。include&am…

Centos下Nodejs+npm环境-部署记录

公司的一个项目上线,需要用到Nodejs和npm环境,这里记录下安装过程,方便回看同时供大家参考。 1)yum安装方式(版本比较老点,v5.12.0 3.8.6) 需要在centos中添加epel和remi源添加epel源&#xff…

AngularJS 事件

ng-click 指令 ng-click 指令定义了 AngularJS 点击事件。 <!DOCTYPE html> <html><head><meta charset"utf-8"><script src"http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script></head>&l…

[LeetCode] #22 Generate Parentheses

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses. For example, given n 3, a solution set is: "((()))", "(()())", "(())()", "()(())", "()()()" 本题是括号…

匹配字符串-好技能-正则表达式

1. 正则表达式规则 1.1 普通字符 字母、数字、汉字、下划线、以及后边章节中没有特殊定义的标点符号&#xff0c;都是"普通字符"。表达式中的普通字符&#xff0c;在匹配一个字符串的时候&#xff0c;匹配与之相同的一个字符。 举例1&#xff1a;表达式 "c&q…

在java中图片随机播放_java-以相同顺序随机播放多个文件

接下来仅使用基本的bash命令.原则是&#xff1a;>生成随机顺序(数字)>按此顺序订购所有文件编码#!/bin/bashcase "$#" in0) echo "Usage: $0 files....." ; exit 1;;esacORDER"./.rand.$$"trap "rm -f $ORDER;exit" 1 2count$(g…

2018年5月5日论文阅读

国外精读&#xff01;title&#xff08;27&#xff09;&#xff1a;We don’t need no bounding-boxes: Training object class detectors using only human verification&#xff08;我们不需要任何边界框&#xff1a;只使用人工验证来训练对象类别检测器&#xff09;---20170…

sql2005主从数据库同步配置

网站规模到了一定程度之后&#xff0c;该分的也分了&#xff0c;该优化的也做了优化&#xff0c;但是还是不能满足业务上对性能的要求&#xff1b;这时候我们可以考虑使用主从库。主从库是两台服务器上的两个数据库&#xff0c;主库以最快的速度做增删改操作最新数据的查询操作…