Python箱型图处理离群点的例子


Posted in Python onDecember 09, 2019

首先我们简单地区分一下离群点(outlier)以及异常值(anomaly):

离群点:

Python箱型图处理离群点的例子

异常值:

个人觉着异常值和离群点是两个不同的概念,当然大家在数据预处理时对于这两个概念不做细致的区分,不如:姚明站在我们中间的时候,我觉着我们只能说他是一个离群点,我们能说他异常吗?异常的假设是姚明得了巨人症,可是他不是。

箱型图

Python箱型图处理离群点的例子

Python箱型图处理离群点的例子

代码块

餐饮销售数据离群点检测代码:

#-*- coding: utf-8 -*-
import pandas as pd

catering_sale = '../data/catering_sale.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(return_type='dict') #画箱线图,直接使用DataFrame的方法
x = p['fliers'][0].get_xdata() # 'fliers'即为离群点的标签
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() #展示箱线图

运行结果:

Python箱型图处理离群点的例子

以上这篇Python箱型图处理离群点的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 表达式和语句及for、while循环练习实例
Jul 07 Python
python 生成器协程运算实例
Sep 04 Python
python 实现将字典dict、列表list中的中文正常显示方法
Jul 06 Python
Python模块的加载讲解
Jan 15 Python
Python3常用内置方法代码实例
Nov 18 Python
pyspark 随机森林的实现
Apr 24 Python
python使用for...else跳出双层嵌套循环的方法实例
May 17 Python
Python pip安装模块提示错误解决方案
May 22 Python
python 如何调用远程接口
Sep 11 Python
python复合条件下的字典排序
Dec 18 Python
python 如何读、写、解析CSV文件
Mar 03 Python
python和Appium的移动端多设备自动化测试框架
Apr 26 Python
Python实现非正太分布的异常值检测方式
Dec 09 #Python
python 实现检验33品种数据是否是正态分布
Dec 09 #Python
Python远程开发环境部署与调试过程图解
Dec 09 #Python
使用 Python 合并多个格式一致的 Excel 文件(推荐)
Dec 09 #Python
Python udp网络程序实现发送、接收数据功能示例
Dec 09 #Python
python3 tcp的粘包现象和解决办法解析
Dec 09 #Python
python绘制规则网络图形实例
Dec 09 #Python
You might like
php采用ajax数据提交post与post常见方法总结
2014/11/10 PHP
公共js在页面底部加载的注意事项介绍
2013/07/18 Javascript
jQuery动态添加、删除元素的方法
2014/01/09 Javascript
一个简单的Node.js异步操作管理器分享
2014/04/29 Javascript
jquery使用each方法遍历json格式数据实例
2015/05/18 Javascript
JavaScript实现自动弹出窗口并自动关闭窗口的方法
2015/08/06 Javascript
JQuery菜单效果的两个实例讲解(3)
2015/09/17 Javascript
关于Bootstrap按钮组件消除黄框的方法
2017/05/19 Javascript
webpack构建react多页面应用详解
2017/09/15 Javascript
tween.js缓动补间动画算法示例
2018/02/13 Javascript
vue下载excel的实现代码后台用post方法
2019/05/10 Javascript
Vue+ElementUI项目使用webpack输出MPA的方法
2019/08/27 Javascript
卸载vue2.0并升级vue_cli3.0的实例讲解
2020/02/16 Javascript
JS通用方法触发点击事件代码实例
2020/02/17 Javascript
Vue中 axios delete请求参数操作
2020/08/25 Javascript
在vue项目中promise解决回调地狱和并发请求的问题
2020/11/09 Javascript
Python基础练习之用户登录实现代码分享
2017/11/08 Python
Python SMTP发送邮件遇到的一些问题及解决办法
2018/10/24 Python
python 执行文件时额外参数获取的实例
2018/12/18 Python
Python supervisor强大的进程管理工具的使用
2019/04/24 Python
200行python代码实现2048游戏
2019/07/17 Python
Python OpenCV调用摄像头检测人脸并截图
2020/08/20 Python
在 Python 中使用 MQTT的方法
2020/08/18 Python
python 实现"神经衰弱"翻牌游戏
2020/11/09 Python
在终端启动Python时报错的解决方案
2020/11/20 Python
html5 svg 中元素点击事件添加方法
2013/01/16 HTML / CSS
传播学专业毕业生自荐信
2013/11/04 职场文书
读书心得体会
2013/12/28 职场文书
教育课题研究自我鉴定范文
2013/12/28 职场文书
打架检讨书400字
2014/01/17 职场文书
读书活动总结范文
2014/04/26 职场文书
出售房屋委托书范本
2014/09/24 职场文书
民间借贷借条范本
2015/05/25 职场文书
导游词之贵州百里杜鹃
2019/10/29 职场文书
Mysql 如何实现多张无关联表查询数据并分页
2021/06/05 MySQL
Go并发4种方法简明讲解
2022/04/06 Golang