四分位距IQR_ interquartile range

四分位距IQR_ interquartile range

  • 1 IQR(Interquartile Range)四分位距的含义
  • 2 如何计算IQR
  • 参考:

1 IQR(Interquartile Range)四分位距的含义

官方定义: 四分位距(interquartile range, IQR),又称四分差。是描述统计学中的一种方法,以确定第三四分位数第一四分位数的差距。与方差、标准差一样,表示统计资料中各变量分散情形,但四分差更多为一种稳健统计。

盒须图使用四分位数(将数据划分为大小相等的四组点)来绘制数据的形状。盒子代表第 1 个和第 3 个四分位数,它们等于第 25 个和第 75 个百分点。盒子内的线代表第二个四分位数,即中间值。

四分位距(该离群值检测方法正是因此而得名)是第一个和第三个四分位数(盒子边缘)之间的间距。Tukey 认为,如果数据点比第一个四分位数低 1.5 乘 IQR,或比第三个四分位数高 1.5 乘 IQR,就属于离群或极度离群。在经典的盒须图中,须线一直延伸到界限内的最后一个数据点。

四分位距 (IQR) 是一种衡量变异性的方法,它通过将数据集划分为四分位数来实现。四分位数将一个按等级排序的数据集划分为四个相等的部分。即 Q1(第 1 个四分位数)、Q2(第 2 个四分位数)和 Q3(第 3 个四分位数)。IQR 定义为 Q3–Q1,位于 Q3+1.5IQR 或 Q1-1.5IQR 之外的数据被视为离群值。

image.png

2 如何计算IQR

计算 IQR:分步指南 要计算四分位距,请按照下列步骤操作:

第 1 步:按升序排列数据首先按升序排列数据集。
第 2 步:求中位数Q2确定数据集的中位数,即中间值。 如果数据集有奇数个值,则中位数是中间的值。 对于偶数个值,取中间两个值的平均值。
步骤 3:找到下半部分 (Q1) 的中位数 确定数据集下半部分的中位数,排除总体中位数。 这是第一个四分位数 (Q1)。
步骤 4:找到上半部分的中位数 (Q3) 同样,找到数据集上半部分的中位数,排除整体中位数。 这是第三个四分位数 (Q3)。
第 5 步:**计算 IQR **最后,从 Q1 中减去 Q3,即可得到四分位数间距:IQR = Q3 – Q1

举例说明:图表中的数据:

数列参数四分差
1102
2104
3105Q1
4107
5108
6109Q2(中位数)
7110
8112
9115Q3
10118
11118



从这个图示中,我们可以算出四分差的距离为115−105=10

用python代码实现:
用python实现当然可以一个一个循环去计算,但是python的numpy库提供了非常好用的封装函数,这里就不再去一个一个计算了,而是直接使用numpy库进行处理了,实现代码如下

import numpy as npdef get_iqr_data(datas):q1=np.quantile(datas,0.25)q2=np.median(datas)q3=np.quantile(datas,0.75)iqr=q3-q1down=q1-1.5*iqrup=q3+1.5*iqrreturn [q1,q2,q3,iqr,down,up]if __name__=="__main__":x=[1,2,3,4,5,6,7,8,9,10,11]rs=get_iqr_data(x)print(rs)

执行结果如下:

[3.5, 6.0, 8.5, 5.0, -4.0, 16.0]

通过这里的执行结果可以看住,在数据列表 [1,2,3,4,5,6,7,8,9,10,11] 中,四分之一的点的数据为3.5,这是因为总共11个数,四分之一落在了两个数之间,四分之二的点恰好就是第6个数了,四分之三的点又落在了两个数据之间,所以是8.5,那么这里IQR就是q3-q1即5.0,通过公式计算此时有效范围为(-4.0,16.0),超出此范围的数据为无效数据。

参考:

https://blog.csdn.net/redrose2100/article/details/130211842
https://zh.wikipedia.org/wiki/%E5%9B%9B%E5%88%86%E4%BD%8D%E8%B7%9D

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

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

相关文章

机器学习中梯度下降法的缺点

机器学习中的梯度下降法是一种寻找函数最小值的优化算法,广泛应用于训练各种模型,尤其是在深度学习中。尽管其应用广泛,但梯度下降法也存在一些不可忽视的缺点: 1. 局部最小值和鞍点 局部最小值问题: 对于非凸函数&a…

数据分析 - 机器学习

1:线性回归 线性回归是一种统计技术用于对输出变量与一个或多个输入变量之间的关系进行建模 用外行人的话来说,将其视为通过某些数据点拟合一条线,如下所示 以便在未知数据上进行预测,假设变量之间存在线性关系 点和线之间存在微小…

[ansible] playbook运用

一、复习playbook剧本 --- - name: first play for install nginx #设置play的名称gather_facts: false #设置不收集facts信息hosts: webservers:dbservers #指定执行此play的远程主机组remote_user: root #指定执行此play的用…

python绘制k线图均线图

AAPL.csv 数据文件 Date,Close,Volume,Open,High,Low 06/23/2023,$186.68,53117000,$185.55,$187.56,$185.01 06/22/2023,$187.00,51245330,$183.74,$187.045,$183.67 06/21/2023,$183.96,49515700,$184.90,$185.41,$182.5901 06/20/2023,$185.01,49799090,$184.41,$1…

15-55V输入自动升降压 光伏MPPT自动跟踪充电方案 大功率300瓦

1.MPPT原理--简介 MPPT,全称为Maximum Power Point Tracking,即最大功点跟踪,它是一种通过调节电气模块的工作状态,使光伏板能够输出更多电能的电气系统能够将太阳能电池板发出的直流电有效地贮存在蓄电池中,可有效地…

【蓝桥杯】算法模板题(Floyd算法)

一.弗洛伊德算法 用途:用来求解多源点最短路径问题。 思想:Floyd算法又称为插点法,是一种利用动态规划的思想寻找给定的加权图中多源点之间最短路径的算法。 主要步骤: 1)初始化:使用邻接矩阵初始化dis…

GitHub仓库文件部署

目录 软件下载和安装 git创建仓库 Github仓库配置 git管理软件配置 Git管理 软件下载和安装 首先需要下载git,以及git管理软件,对其进行安装。 git创建仓库 首先需要创建仓库,在本地仓库文件夹cmd之后输入以下指令创建git仓库文件。 …

小米空气净化器2s使用体验

这个产品最早上市是2017年,我买回来实际上只用了1年就弃用了,性能不行,使用体验也不好。 打算买新的空气净化器,抽空吐槽一下。 这个净化器发售价是899,在当时来说算中下水平的,小米的,有米家…

Spring Boot与LiteFlow:轻量级流程引擎的集成与应用含完整过程

点击下载《Spring Boot与LiteFlow:轻量级流程引擎的集成与应用含完整过程》添加链接描述 1. 前言 本文旨在介绍Spring Boot与LiteFlow的集成方法,详细阐述LiteFlow的原理、使用流程、步骤以及代码注释。通过本文,读者将能够了解LiteFlow的特…

数据分析师SQL面试准备(part1)

1. SQL 万能框架 2. SQL的书写顺序,跟程序真的执行顺序不同 3. 4. 5. 6. 7. case when utilization 8. 9. 10. 11.

OpenHarmony—UIAbility组件间交互(设备内)

UIAbility是系统调度的最小单元。在设备内的功能模块之间跳转时,会涉及到启动特定的UIAbility,该UIAbility可以是应用内的其他UIAbility,也可以是其他应用的UIAbility(例如启动三方支付UIAbility)。 本章节将从如下场…

多维时序 | Matlab实现LSTM-Mutilhead-Attention长短期记忆神经网络融合多头注意力机制多变量时间序列预测模型

多维时序 | Matlab实现LSTM-Mutilhead-Attention长短期记忆神经网络融合多头注意力机制多变量时间序列预测模型 目录 多维时序 | Matlab实现LSTM-Mutilhead-Attention长短期记忆神经网络融合多头注意力机制多变量时间序列预测模型预测效果基本介绍程序设计参考资料 预测效果 基…

化学空间可视化(chemical space visualization)开源软件ChemPlot的安装及使用

文章目录 前言一、ChemPlot是什么?二、conda环境安装ChemPlot1. 创建conda环境2. 安装chemplot及需要的包3. 检验安装 三、使用步骤1. 化合物数据库可视化使用方法BBBP数据库的t-SNE降维后可视化:BBBP数据库的PCA降维后可视化:BBBP数据库的UM…

shapely 笔记:基本方法

1 线性方法 1.1 object.interpolate(distance[, normalizedFalse]) print(LineString([(0, 0), (0, 1), (1, 1)]).interpolate(1.5)) #POINT (0.5 1)print(LineString([(0, 0), (0, 1), (1, 1)]).interpolate(0.75, normalizedTrue)) #POINT (0.5 1) LineString([(0, 0), (0…

JimuReport积木报表 v1.7.0 变革版本发布,低代码报表设计工具

项目介绍 一款免费的数据可视化报表,含报表和大屏设计,像搭建积木一样在线设计报表!功能涵盖,数据报表、打印设计、图表报表、大屏设计等! Web 版报表设计器,类似于excel操作风格,通过拖拽完成报…

从零开始的 dbt 入门教程 (dbt core 开发进阶篇)

引 在上一篇文章中,我们花了专门的篇幅介绍了 dbt 更多实用的命令,那么我们继续按照之前的约定来聊 dbt 中你可能会遇到的疑惑以及有用的概念,如果你是 dbt 初学者,我相信如下知识点一定会对你有极大的帮助: 了解 dbt_…

java基础训练题(2)

一、题目 1. 以下程序输出(D) public static void main(String[] args) {int num 2;switch (num) {case 1:num;case 2:num;case 3:num;default:num;break;}System.out.println(num);} } A:2 B:3 C:4 D&#xff…

STM32 TIM输入捕获测频率占空比库函数

目录 一、输入捕获初始化函数 TIM_ICInit TIM_PWMIConfig TIM_ICStructInit 二、主从触发模式对应函数 TIM_SelectInputTrigger TIM_SelectOutputTrigger TIM_SelectSlaveMode 三、配置分频器函数 TIM_SetIC1Prescaler TIM_SetIC2Prescaler TIM_SetIC3Prescaler T…

Kubernetes基础(二十二)-K8S的PV/PVC/StorageClass详解

1 概述 先来个一句话总结:PV、PVC是K8S用来做存储管理的资源对象,它们让存储资源的使用变得可控,从而保障系统的稳定性、可靠性。StorageClass则是为了减少人工的工作量而去自动化创建PV的组件。所有Pod使用存储只有一个原则:先规…

蓝牙BLE安全-SSP简单安全配对

SSP的配对过程由于可以根据设备的IO能力选择不同的关联模型,因此十分灵活,其提供了四种方式:Numeric Comparison、Passkey Entry、Just Works以及Out of Band (OOB) 。这里关联方式的选择实质上对后面的流程是有一定影响的,如Just…