(python 区间)(python列表区间)

一、在分享今天的内容之前,我们先来简单了解下关于数学中的部分统计学及概率的知识。

首先,正态分布是最重要的一种概率分布,正态分布(Normal distribution),也称高斯分布(Gaussian distribution),具体详细地介绍可自行网上查阅资料;

其次,如下图中所示的:分位数、中位数、众数等;

(python 区间)(python列表区间)

再者,就是今天要重点介绍的箱型图,如下图所示

(python 区间)(python列表区间)

待会要分享的Python程序就是对箱型图中上下边缘值的计算实现。

通过下图所示,可初步了解下正态分布图的分布状况。

(python 区间)(python列表区间)

图中所示的百分比即数据落入该区间内的概率大小,由图可见,在正负一倍的sigmam内,该区间的概率是最大的。达到34.1%,而超过正负3倍的sigma以外的区间概率是最小的,只有0.1%。所以通常会使用3sigma作为分界节点。

箱型图上下限取值为什么要使用

IQR = Q3 -Q1

上边缘 = Q3(上四分位数) + 1.5IQR

下边缘 = Q1(下四分位数) - 1.5IQR

原因在于Q3(上四分位数) + 1.5IQR与 Q1(下四分位数) - 1.5IQR比较接近于正负3sigma的界限值。

如下截图所示:

(python 区间)(python列表区间)

二、上面简单介绍了下正态分布及箱型图的知识,接下来就看如何用Python来实现大数据量的数据中上下边缘值的计算。

(在贴代码之前简单说下需求背景,即:公司网页上某个指标数据需要每天check下展示给用户看到的数据是否正常,且这个数据每天都会随实际的线下营业情况而不同,所以不能简单判断是否为一固定值,经过分析可以采用箱型图的上下边缘值来做判断,正常情况下应该是服从正态分布的,即落入正负3sigma的区间内,如果没有落入该区间程序则报警反馈页面数据展示异常)

以下是Python的代码实现:

(python 区间)(python列表区间)

该实现方法中共需要传递4个参数:

(1)、indicators_path:excel文件的路径

(2)、sheet_name:excel文件路径下对应的sheet的名称

(随机选择数字)(随机选择 python)

(3)、all_data_list:数据列表,相当于Python中的list

(4)、singal_data:all_data_list中的单个元素

以下截图为excel中的大量数据集:

(python 区间)(python列表区间)

Python代码重要注释说明:

Line3-6:读取excel表中每列数据并转成list集合

Line7:删除excel中每列最后一行的值

Line9-10:判断如果某列的值完全一样,则赋值一个固定的字符串,供调用方判断时使用

Line12:对list中的所有数据进行反转,且由小到大的排序

Line13-17:目的是将list中除了为“nan”的数据全部放置于另一个list中

(python 目标检测 训练)(python直线检测训练)

Line20-24:利用numpy函数求出箱型图中的四分之一和四分之三分位的值

Line25-30:利用前面所讲到的公式求出箱型图中上下边缘的值,也是该方法的终极目的

调用方在调用该函数时只需按规则传入对应的参数,拿到该方法返回的上下边缘值对页面上返回的数据进行区间判断即可。

声明:我要去上班所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者所有,原文出处。若您的权利被侵害,请联系删除。

本文标题:(python 区间)(python列表区间)
本文链接:https://www.51qsb.cn/article/4333.html

(0)
打赏微信扫一扫微信扫一扫QQ扫一扫QQ扫一扫
上一篇2022-09-12
下一篇2022-09-12

你可能还想知道

发表回复

登录后才能评论