返回顶部
首页 > 资讯 > 后端开发 > Python >python使用箱型图剔除异常值
  • 268
分享到

python使用箱型图剔除异常值

pythonpandas 2023-09-11 12:09:18 268人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录 箱型图 pandas.DataFrame.quantile 参数: 返回:(Series or DataFrame) 示例: 代码实现  参考 箱型图 将一组数据从大到小排列,分别计算出, 上四分位数𝑄3: 75%

目录

箱型图

pandas.DataFrame.quantile

参数:

返回:(Series or DataFrame)

示例:

代码实现 

参考


箱型图

将一组数据从大到小排列,分别计算出,

上四分位数𝑄3: 75%分位点所对应的值

中位数𝑄2:         50%分位点对应的值

下四分位数𝑄1: 25%分位点所对应的值

上边缘(须):            Q3+1.5(Q3-Q1)

下边缘(须):            Q1-1.5(Q3-Q1)

数据𝑥的合理范围为:

𝑄1 − 1.5(𝑄3 − 𝑄1)  ≤  𝑥  ≤  𝑄3 + 1.5(𝑄3 − 𝑄1)

        和使用3σ准则剔除异常值相比,箱线图不需要数据服从正态分布,能真实直观的表现数据形状;箱线图以四分位数和四分位距作为判断异常值的标准,四分位数具有一定的耐抗性,多达 25%的数据可以变得任意远而不会很大地扰动四分位数,使得异常值无法对数据形状造成巨大影响,因此箱形图识别异常值的结果比较客观。


pandas.DataFrame.quantile

对于dataframe形式的数据,可以直接调用DataFrame.quantile(),以快速计算箱型图的分位点。
DataFrame.quantile(q=0.5, axis=0, numeric_only=True, interpolation='linear')

参数:

  • q:float or array-like, default 0.5 (50% quantile),0 ≤ q ≤ 1之间的值,即要计算的分位数;
  • axis:{0, 1, ‘index’, ‘columns’}, default 0,对于行,等于0或“索引”,对于列,等于1或“列”;
  • numeric_only:bool, default True,如果为False,则还将计算日期时间和时间增量数据的分位数;
  • interpolation:{‘linear’, ‘lower’, ‘higher’, ‘midpoint’, ‘nearest’},当所需分位数位于两个数据点i和j之间时,此可选参数指定要使用的插值方法。

返回:(Series or DataFrame)

  • 如果q是数组,则将返回DataFrame,其中index为q,列为self的列,值为分位数。
  • 如果q为float,则index是self的列,值为分位数

示例:

import pandas as pdimport numpy as np# 生成数据d = pd.DataFrame({"SO2":[-1000, 5, 5, 10, 9, 12, 11, 100],                     "NO2":[12, 52, 14, 10, 10, 23, 15, 9],                     "CO2":[15, 23, 0, 24, 25, 7, 4, 715],                     "O3":[17, 23, 33, 10000, 11, 47, 5, 22] })

 q 为 float:

 q 为 数组: 


代码实现 

# 箱型图判断异常点def box_outlier(data):    df = data.copy(deep=True)    out_index = []    for col in df.columns:             # 对每一列分别用箱型图进行判断        Q1 = df[col].quantile(q=0.25)       # 下四分位        Q3 = df[col].quantile(q=0.75)       # 上四分位        low_whisker = Q1 - 1.5 * (Q3 - Q1)  # 下边缘        up_whisker = Q3 + 1.5 * (Q3 - Q1)   # 上边缘                # 寻找异常点,获得异常点索引值,删除索引值所在行数据        rule = (df[col] > up_whisker) | (df[col] < low_whisker)          out = df[col].index[rule]        out_index += out.tolist()      df.drop(out_index, inplace=True)    return df

使用前文创建的数据

box_outlier(d)

 

参考

pandas.DataFrame.quantile

【PYTHON 机器学习】正态分布检验以及异常值处理3Σ原则

来源地址:https://blog.csdn.net/qq_57313910/article/details/127103346

--结束END--

本文标题: python使用箱型图剔除异常值

本文链接: https://lsjlt.com/news/403066.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python使用箱型图剔除异常值
    目录 箱型图 pandas.DataFrame.quantile 参数: 返回:(Series or DataFrame) 示例: 代码实现  参考 箱型图 将一组数据从大到小排列,分别计算出, 上四分位数𝑄3: 75%...
    99+
    2023-09-11
    python pandas
  • python使用箱型图剔除异常值的实现方法
    目录箱型图pandas.DataFrame.quantile参数:返回:(Series or DataFrame)示例:代码实现 参考总结箱型图 将一组数据从大到小排列,...
    99+
    2023-05-19
    箱形图剔除异常值 python箱形图 python异常值处理
  • r语言如何剔除异常值
    在R语言中,可以使用以下方法剔除异常值: 使用3σ原则:假设数据服从正态分布,可以计算数据的均值和标准差,然后根据3σ原则,将超过...
    99+
    2023-10-23
    r语言
  • matlab怎么查找异常值并剔除
    要查找并剔除异常值,可以使用以下步骤:1. 通过统计描述性统计量(如均值、中位数、标准差等)来确定异常值的范围。可以使用MATLAB...
    99+
    2023-09-25
    matlab
  • 用python的seaborn画数值箱型图
    目录 一、概念介绍二、数据展示 三、数据导入  四、画图总结 一、概念介绍 箱型图(box-plot),又称为箱线图,盒型图,盒须图...
    99+
    2024-04-02
  • 怎么用python的seaborn画数值箱型图
    这篇文章主要为大家展示了“怎么用python的seaborn画数值箱型图”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么用python的seaborn画数值箱型图”这篇文章吧。 一、...
    99+
    2023-06-26
  • python怎么去除异常值和缺失值的插值
    python怎么去除异常值和缺失值的插值,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。使用箱型法去除异常值:import numpy as n...
    99+
    2023-06-29
  • python如何去除异常值和缺失值的插值
    1.使用箱型法去除异常值: import numpy as np import pandas as pd import matplotlib as plt import os dat...
    99+
    2024-04-02
  • Python调用Matplotlib绘制振动图、箱型图和提琴图
    目录Matplotlib介绍振动图箱型图提琴图Matplotlib介绍 Matplotlib 是一款用于数据可视化的 Python 软件包,支持跨平台运行,它能够根据 NumPy  ...
    99+
    2024-04-02
  • Python利用matplotlib.pyplot.boxplot()绘制箱型图实例代码
    目录一、matplotlib.pyplot.boxplot()语法二、绘制箱型图①绘制简单箱型图②各个参数绘制箱型图(1)notch参数(bool值,是否凹口的形式展现箱线图,默认值...
    99+
    2024-04-02
  • Python 基础 - 3 常用数值类型
    参考: Python 基础 - 0 前言 Built-in Types Python 数值类型包括整型(integer),浮点型(floating point number)和复数(complex number),并且,布尔型(...
    99+
    2023-01-31
    数值 常用 类型
  • Python怎么调用Matplotlib绘制振动图、箱型图和提琴图
    本篇内容介绍了“Python怎么调用Matplotlib绘制振动图、箱型图和提琴图”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Matplo...
    99+
    2023-06-21
  • Python怎么使用pyecharts绘制箱形图
    这篇文章主要介绍“Python怎么使用pyecharts绘制箱形图”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python怎么使用pyecharts绘制箱形图”文章能帮助大家解决问题。箱形图概念后...
    99+
    2023-07-02
  • python异常链怎么使用
    今天小编给大家分享一下python异常链怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。说明当通过except捕捉到一...
    99+
    2023-06-30
  • Python使用plt.boxplot()函数绘制箱图、常用方法以及含义详解
    目录1. 箱图含义2.计算方法3.绘图3.1 绘制单个箱图3.2 绘制多个箱图3.3实战3.3 参数详解3.4 常用方法总结 1. 箱图含义 箱图是一中用于统计数据分布的统...
    99+
    2024-04-02
  • C++ 技术中的异常处理:如何使用异常规范检查异常类型?
    c++++中的异常规范可以指定函数可能引发的异常类型,用于确保正确处理异常。要使用异常规范,可在函数声明中使用noexcept关键字,后跟异常类型列表。如divide函数,使用noexc...
    99+
    2024-05-09
    异常处理 异常规范 c++ overflow
  • python数值类型如何使用
    本篇内容介绍了“python数值类型如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、数值类型之间都是可以相互转化的,两种不同类型相...
    99+
    2023-06-30
  • C++ 函数异常与泛型编程:使用异常提升代码复用性
    使用异常和泛型编程可以提升 c++++ 函数的代码复用性。异常处理用于报告错误,泛型编程则支持函数和类以与数据类型无关的方式运行。例如,read_file() 函数可读取文件数据,若文件...
    99+
    2024-05-03
    c++ 异常
  • python如何使用with忽视异常
    这篇文章将为大家详细讲解有关python如何使用with忽视异常,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用 with 忽视异常(仅限Python 3)##不推荐 ...
    99+
    2024-04-02
  • 怎么在python异常中使用else
    怎么在python异常中使用else,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1、说明当确定没有异常后,还需要做一些事情可以使用else语句。注意:try中...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作