当前位置: 首页 > news >正文

Python-四分位数计算

怎么计算四分位数

先理解四分位数怎么计算:可参考https://zhuanlan.zhihu.com/p/235345817,

假设数列一共有n个数

1)当 (n+1)/4可以整除时,

Q1第在(n+1)/4位

Q2第 (n+1)/2位

Q3第(n+1)/4*3位

举例 1 2 2 5 6 9 9 这个数列

Q1在第 (7+1)/4 =2 位,即Q1=2

Q2在第(7+1)/2=4位,即Q2=5

Q3在第(7+1)/4*3=6位,即Q3=9

2)当 (n+1)/4不能整除时

举例 数列 1 2 3 4 5 6 7 8

Q1在 (8+1)/4=2.25位, 介于第二和第三位之间,但是更靠近第二位。所以第二位数权重占75%,第三位数权重占25%。Q1=(2*0.75+3*0.25)/(0.75+0.25)=2.25

Q2在 (8+1)/2=4.5位,即第4和第5位的平均数,Q2=4.5

同理Q3在(8+1)/4*3=6.75位,在第六位和第七位之间,更靠近第7位。所以第7位权重75%,第6位权重25%。

Q3=(7*0.75+6*0.25)/(0.75+0.25)=6.75

代码实现

import matplotlib.pyplot as plt#s = [5,9,13,15,16,17,19,21,22,25,26,26,29,30,32,39,52]
s = [7, 15, 36, 39, 40, 41]
#判断能不能整除
if (len(s)+1)%4 ==0:#Q1/Q2/Q3的位置q1 = int((len(s)+1)/4-1)q2 = int(2*(len(s)+1)/4-1)q3 = int(3*(len(s)+1)/4-1)print('Q1是:{},Q2是{},Q3是{}'.format(s[q1],s[q2],s[q3]))
else:q1 = (len(s)+1)/4-1#判断是否超过.5int_q1 = int(q1)if q1<int_q1+0.5:q1_value = s[int_q1]*0.75+s[int_q1+1]*0.25elif q1>int_q1+0.5:q1_value = s[int_q1]*0.25+s[int_q1+1]*0.75else:q1_value = s[int_q1]*0.5+s[int_q1+1]*0.5#下面计算Q2if (len(s)+1)%2 ==0:q2 = int((len(s)+1)/2-1)  #位置q2_value = s[q2]else:q2 = int((len(s)+1)/2-1)q2_value = (s[q2]+s[q2+1])/2#下面计算Q3q3 = 3*(len(s)+1)/4-1#判断是否超过.5int_q3 = int(q3)if q3<int_q3+0.5:q3_value = s[int_q3]*0.75+s[int_q3+1]*0.25elif q3>int_q3+0.5:q3_value = s[int_q3]*0.25+s[int_q3+1]*0.75else:q3_value = s[int_q3]*0.5+s[int_q3+1]*0.5print('Q1是:{},Q2是{},Q3是{}'.format(q1_value,q2_value,q3_value))plt.boxplot(s)
plt.show()

结果展示

相关文章:

Python-四分位数计算

怎么计算四分位数先理解四分位数怎么计算&#xff1a;可参考https://zhuanlan.zhihu.com/p/235345817&#xff0c;假设数列一共有n个数1&#xff09;当 &#xff08;n1&#xff09;/4可以整除时&#xff0c;Q1第在&#xff08;n1&#xff09;/4位Q2第 (n1)/2位Q3第(n1)/4*3位举…...

一个简单的步骤让你的 Python 代码更干净

说起来容易做起来难&#xff0c;我们都知道代码可读性非常重要&#xff0c;但是写的时候总是随心所欲&#xff0c;不考虑类型提示、import 排序、PEP8 规范。今天分享一个小技巧&#xff0c;通过一个简单的步骤就可以让你的 Python 代码更干净。这就是 pre-commit&#xff1a;可…...

linux集群技术(二)--keepalived(高可用集群)(一)

高可用集群简介keepalived简介 1.高可用集群简介 1.1什么是高可用集群 高可用集群&#xff08;High Availability Cluster&#xff0c;简称HA Cluster&#xff09;&#xff0c;是指以减少服务中断时间为目的的服务器集群技术。它通过保护用户的业务程序对外不间断提供的服务&am…...

C++中的类型转换

目录 一、C语言中的类型转换 二、C中的类型转化 2.1 static_cast 2.2 const_cast2.2 const_cast 2.3reinterpret_cast 重解释转换 2.4 dynamic_cast 动态转换&#xff08;&#xff01;&#xff01;&#xff01;&#xff09; 3. explicit 防止隐式类型转化 一、C语言…...

如何使用raw socket发送UDP报文

前面写的一篇《Linux下如何在数据链路层接收原始数据包》举了一个实例,使用raw socket接收UDP数据报,但是发送一个数据包比接收要复杂一些,本文以一个实例说明如何使用raw socket发送一个UDP报文。 1. 前言 阅读本文前可以考虑先阅读一下我的另外一篇文章《Linux下如何在数据…...

【C++】文件IO流

一起来康康C中的文件IO操作吧 文章目录1.operator bool2.C文件IO流3.文件操作3.0 关于按位与的说明3.1 ifstream3.2 ofstream流插入文本3.3 ostringstream/istringstream3.4 stringstream3.5使用stringstream的注意事项结语1.operator bool 之前写OJ的时候&#xff0c;就已经用…...

JavaScript高级程序设计读书分享之4章——4.2执行上下文与作用域

JavaScript高级程序设计(第4版)读书分享笔记记录 适用于刚入门前端的同志 执行上下文 变量或函数的上下文决定 了它们可以访问哪些数据&#xff0c;以及它们的行为。在浏览器中&#xff0c;全局上下文就是我们常说的 window 对象&#xff08;第 12 章会详细介绍&#xff09;&am…...

函数的定义与声明

目录 1.函数的定义 2.函数声明 2.1 函数本地声明 2.2 函数外部声明 2.2.1函数的外部声明的好处和坏处 3.变量定义与声明 3.1变量定义 3.2变量声明 4.结构体的定义与声明 4.1结构体的定义 4.2结构体的声明 1.函数的定义 函数的定义即函数的具体实现。 2.函数声明 函数…...

C#部署非安装版(绿色版)mysql

C#部署非安装版&#xff08;绿色版&#xff09;mysql场景实现步骤场景 项目由bs和cs端组成&#xff0c;bs端的数据存储在了mysql中&#xff0c;cs依赖bs运行&#xff0c;bs会显示一些实时的信息。 需求是给客户一个安装包&#xff0c;简易操作就可安装完成。 使用版本&#xf…...

【RecBole-GNN/源码】RecBole-GNN中lightGCN源码解析

如果觉得我的分享有一定帮助&#xff0c;欢迎关注我的微信公众号 “码农的科研笔记”&#xff0c;了解更多我的算法和代码学习总结记录。或者点击链接扫码关注【RecBole-GNN/源码】RecBole-GNN中lightGCN源码解析 【RecBole-GNN/源码】RecBole-GNN中lightGCN源码解析 原文&…...

基于UIAutomation+Python+Unittest+Beautifulreport的WindowsGUI自动化测试框架common目录解析

文章目录1 框架工具说明2 技术栈说明3 框架截图4 源码解析/common目录4.1 common/baseinfo.py4.2 common/creenShot.py4.3 common/logOut.py4.4 common/reportOut.py4.5 common/sendMail.py注&#xff1a; 1、本文为本站首发&#xff0c;他用请联系作者并注明出处&#xff0c;谢…...

c++提高篇——queque容器

一、queque容器基本概念 Queue是一种先进先出(FIFO)的教据结构&#xff0c;它有两个出口 队列容器允许从一端新增元素&#xff0c;从另一端移除元素。队列中只有队头和队尾才可以被外界使用&#xff0c;因此队列不允许有遍历行为队列中进数据。 queque容器可以形象化为生活中…...

MyBatis-XML映射文件详解

一、XML 映射器 1.概述 使用 xml 文件去配置 SQL 代码&#xff0c;比传统的 jdbc 简单方便&#xff0c;能够少写代码&#xff0c;减少使用成本&#xff0c;提高工作效率。 1.1SQL 映射文件中的顶级元素 cache – 该命名空间的缓存配置。 cache-ref – 引用其它命名空间的缓…...

基于Java+SpringBoot+Vue+Uniapp前后端分离健身预约系统设计与实现

博主介绍&#xff1a;✌全网粉丝3W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战✌ 博主作品&#xff1a;《微服务实战》专栏是本人的实战经验总结&#xff0c;《Spring家族及…...

webstom找不到vue全局组件

我真多服气&#xff0c;引入了自动组件注册 // 自动引入组建import { ElementPlusResolver } from unplugin-vue-components/resolversComponents({directoryAsNamespace: true,resolvers: [ElementPlusResolver()]}),生成了 components.d.ts 但是我在webstom中定义了标签 除非…...

ESP32设备驱动-内置霍尔磁力传感器数据读取

内置霍尔磁力传感器数据读取 文章目录 内置霍尔磁力传感器数据读取1、ESP32霍尔磁力传感器介绍2、软件准备3、硬件准备4、读取霍尔磁力传感值5、运行结果ESP32开发板具有内置霍尔效应传感器,可检测周围磁场的变化。本文将介绍如何在Arduino IDE中读取ESP32霍尔效应传感器的数据…...

2023面试准备之--mysql

文章目录mysql存储引擎索引聚簇索引和非聚簇索引事务锁MVCC机制&#xff08;类似于copy on write&#xff09;主从复制为什么要主从同步&#xff1f;怎么处理mysql的慢查询&#xff1f;mysql clint ---->server ----> 存储引擎 存储引擎 Innodb 是MySQL5.5版本及之后默…...

yolov5源码解读--训练策略

yolov5源码解读--训练策略超参数解读命令行参数train模型迭代超参数解读 hyp.scratch.yaml lr0: 0.0032 初始学习率 lrf: 0.12 使用余弦函数动态降低学习率(lr0*lrf) momentum: 0.843 动量 weight_decay: 0.00036 权重衰减项 warmup_epochs: 2.0 预热&#xff08;…...

基于Django的员工管理系统

目录 一、新建项目 二、创建app 三、设计表结构 四、在MySQL中生成表 五、静态文件管理 六、添加页面 七、模板的继承 一、新建项目 django-admin startproject 员工管理系统 二、创建app startapp app01 三、设计表结构 app01/migrations/models.py from django.db impo…...

企业数智化转型在即,看看低代码软件公司如何做!

在信息爆炸的现代社会中&#xff0c;利用先进技术为企业提升办公协作效率&#xff0c;是一件事半功倍的事。当前&#xff0c;数字化转型升级已经是发展趋势&#xff0c;不少企业已经在朝着数智化转型方向迈进。作为一家低代码软件公司&#xff0c;流辰信息看到了市场发展前景&a…...

YOLO-v8.3实战:用AI识别图片中的物体,5分钟完成你的第一个检测项目

YOLO-v8.3实战&#xff1a;用AI识别图片中的物体&#xff0c;5分钟完成你的第一个检测项目 你是否曾经好奇&#xff0c;那些能自动识别照片中物体的人工智能是如何工作的&#xff1f;想象一下&#xff0c;你拍了一张街景照片&#xff0c;AI不仅能告诉你照片里有汽车、行人和红…...

Halcon清晰度检测实战:5种算法全解析,手把手教你选出最清晰的PCB图像

Halcon清晰度检测实战&#xff1a;5种算法全解析&#xff0c;手把手教你选出最清晰的PCB图像 在工业视觉检测领域&#xff0c;PCB板的图像清晰度直接影响缺陷检测的准确率。当相机对焦不准确或存在景深限制时&#xff0c;如何从多张候选图像中自动选择最清晰的一张&#xff0c;…...

LeetCode Hot 100 | 滑动窗口专题(C++ 题解)

LeetCode Hot 100 | 滑动窗口专题&#xff08;C 题解&#xff09; 滑动窗口是处理连续子数组/子字符串问题的核心技巧&#xff0c;通过维护一个可变窗口来避免重复计算&#xff0c;将 O(n) 的暴力枚举优化到 O(n)。本文涵盖 LeetCode Hot 100 中 2 道经典滑动窗口题目&#xff…...

Agent能实现7×24小时无人值守运营吗?——深度拆解AI Agent端到端自动化落地路径

随着大模型技术的演进&#xff0c;AI Agent&#xff08;人工智能体&#xff09;已不再局限于简单的对话交互&#xff0c;而是进化为能够自主规划、调用工具并执行复杂任务的数字员工。针对“Agent能实现724小时无人值守运营吗&#xff1f;”这一核心疑问&#xff0c;答案是肯定…...

避开这5个坑,你的YOLO模型训练效率翻倍:从yaml配置到GPU显存优化实战

YOLO模型训练效率翻倍的5个关键避坑指南&#xff1a;从参数调优到显存管理实战 当你第一次用YOLOv10或v11跑通训练流程时&#xff0c;可能会觉得"不过如此"。但真正投入实战后&#xff0c;90%的开发者都会遇到显存爆炸、训练龟速、指标波动三大噩梦。上周有位使用RTX…...

智能表格在敏捷项目管理中的工时统计实践

1. 为什么敏捷团队需要智能工时统计 在敏捷开发中&#xff0c;两周一次的迭代就像一场短跑比赛。我见过太多团队在冲刺过半时才发现工时严重超支&#xff0c;这时候再调整已经来不及了。传统Excel表格需要手动更新公式&#xff0c;光是合并不同成员的工作量报表就能消耗半天时间…...

嵌入式轻量级任务调度框架cola_os解析与实践

1. 嵌入式轻量级任务调度框架cola_os深度解析在嵌入式开发中&#xff0c;我们经常面临一个经典困境&#xff1a;对于功能简单、实时性要求不高的多任务场景&#xff0c;使用完整的RTOS显得过于臃肿&#xff0c;而裸机轮询又难以维护。今天要介绍的cola_os正是为解决这个问题而生…...

告别计算瓶颈:手把手教你用PyTorch实现ECCV 2024的FFCM图像去雨模块

突破计算效率边界&#xff1a;PyTorch实战ECCV 2024 FFCM图像去雨核心模块 雨滴干扰是计算机视觉领域长期存在的挑战&#xff0c;传统基于空间域的方法往往需要消耗大量计算资源。ECCV 2024提出的FFCM&#xff08;Fused Fourier Convolution Mixer&#xff09;模块通过巧妙融合…...

避开这3个坑!Cortex-M3/M4使用DWT计数器时的常见错误与解决方法

Cortex-M3/M4开发实战&#xff1a;DWT计数器避坑指南与高阶应用技巧 在嵌入式系统开发中&#xff0c;精确的时间测量往往是性能优化和调试的关键。Cortex-M3/M4内核内置的DWT(Data Watchpoint and Trace)组件&#xff0c;特别是其CYCCNT计数器&#xff0c;为开发者提供了一个零…...

Z-Image Atelier 跨平台部署:应对不同操作系统的环境配置要点

Z-Image Atelier 跨平台部署&#xff1a;应对不同操作系统的环境配置要点 最近在帮几个朋友部署Z-Image Atelier这个挺有意思的AI图像工具&#xff0c;发现大家用的系统五花八门&#xff0c;有Windows、有Ubuntu&#xff0c;还有用Mac的。结果就是&#xff0c;照着同一个教程走…...