数据分布之指数分布(sample database classicmodels _No.10)

news2024/11/18 11:13:19

数据分布之指数分布(sample database classicmodels _No.10)

准备工作,可以去下载 classicmodels 数据库具体如下
点击:classicmodels

也可以去 下面我的博客资源下载
https://download.csdn.net/download/tomxjc/88685970


文章目录

  • 数据分布之指数分布(sample database classicmodels _No.10)
  • 什么是指数分布?
  • 指数分布代码
  • SQL 查询说明
  • 截图
  • 判断和结论
    • 判断
    • 结论


什么是指数分布?

数据分布类型分析
指数分布(Exponential Distribution):
如果经过分组统计后,组的计数逐渐减少,尤其在初始的几个组中频率较高,然后逐步下降,则这可能符合指数分布的特点。
指数分布通常用于描述事件之间的时间间隔,如付款时间的间隔。它具有无记忆性,且通常是右偏的,这意味着较小的间隔频率较高,间隔时间越长的频次越低。

指数分布代码

WITH PaymentIntervals AS (
    SELECT 
        customerNumber,
        DATEDIFF(paymentDate, LAG(paymentDate) OVER (PARTITION BY customerNumber ORDER BY paymentDate)) AS interval_days
    FROM payments
    WHERE customerNumber IS NOT NULL
),
RangeStats AS (
    -- 计算最小值、最大值和区间宽度
    SELECT 
        MIN(interval_days) AS min_interval,
        MAX(interval_days) AS max_interval,
        (MAX(interval_days) - MIN(interval_days)) / 20 AS interval_width
    FROM PaymentIntervals
    WHERE interval_days IS NOT NULL
)
-- 分组统计不同的时间间隔区间
SELECT 
    FLOOR((interval_days - (SELECT min_interval FROM RangeStats)) / (SELECT interval_width FROM RangeStats)) AS group_index,
    COUNT(*) AS count
FROM PaymentIntervals, RangeStats
WHERE interval_days IS NOT NULL
GROUP BY group_index
ORDER BY group_index;

SQL 查询说明

CTE PaymentIntervals:

计算每个客户两次付款之间的时间间隔(interval_days)。
使用LAG函数计算相邻两次付款的时间差,按客户编号和付款日期排序。
CTE RangeStats:

计算时间间隔的最小值(min_interval)、最大值(max_interval),以及20个区间的宽度(interval_width)。
区间宽度计算为 (MAX(interval_days) - MIN(interval_days)) / 20。
主查询:

使用计算得到的区间宽度,将时间间隔分为20个组。
使用 FLOOR((interval_days - min_interval) / interval_width) 来确定每个时间间隔属于哪一个组。
对每个组统计时间间隔出现的次数。

截图

在这里插入图片描述

判断和结论

数据特征分析

集中性:
数据的高频部分出现在index为1、2,计数分别为21和21。
数据的频次在最初几个组中较高,然后逐渐减少。

下降趋势:
从index为3之后,计数开始逐渐减少,但减少的方式并不十分规则,而是有起伏。
在后半部分(index为13到20),计数值比较小,大部分为5以下,且逐步趋近于1。

整体形态:
高峰出现在前面几个组,然后频次逐渐下降。
没有明显的对称性,即没有明显的从高峰向两侧对称递减的趋势。
指数分布与正态分布的特点

指数分布:
指数分布是右偏的,通常在开始部分具有较高的频率,然后逐渐快速下降。
特征是单调递减的频次分布,事件发生的时间间隔越短,频率越高,随着间隔时间增大,频率显著下降。

正态分布:
正态分布是钟形的,数据集中在均值附近,并且两侧对称递减。
特征是具有明显的峰值,峰值两侧逐渐下降,呈现出较好的对称性。

判断

是否符合指数分布:
从图表看数据在最初几个index(0到4)中频次较高,然后逐渐减少,这与指数分布的特点较为接近。
从index 之后的计数下降趋势不十分规律,但整体来看,频次有向下递减的趋势,因此可以认为与指数分布较为接近。

是否符合正态分布:
您的数据并没有呈现出对称的钟形曲线,频次高峰在初期,并没有出现均匀的对称下降趋势。
因此,数据不符合正态分布。

结论

根据您提供的分组结果,这组数据更符合指数分布的特点,因为:

数据在初期有较高的频率,然后逐步下降。
尽管下降的幅度有一些起伏,但整体上符合指数分布的单调递减特征。
这种分布通常用于描述事件之间的时间间隔,例如客户付款时间间隔的分布,短间隔时间发生的次数更多,随着时间间隔增加,频率逐渐减少。

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

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

相关文章

RPC-健康检测机制

什么是健康检测? 在真实环境中服务提供方是以一个集群的方式提供服务,这对于服务调用方来说,就是一个接口会有多个服务提供方同时提供服务,调用方在每次发起请求的时候都可以拿到一个可用的连接。 健康检测,能帮助从连…

Flink_DataStreamAPI_执行环境

DataStreamAPI_执行环境 1创建执行环境1.1getExecutionEnvironment1.2createLocalEnvironment1.3createRemoteEnvironment 2执行模式(Execution Mode)3触发程序执行 Flink程序可以在各种上下文环境中运行:我们可以在本地JVM中执行程序&#x…

Cyberchef配合Wireshark提取并解析HTTP/TLS流量数据包中的文件

本文将介绍一种手动的轻量级的方式,还原HTTP/TLS协议中传输的文件,为流量数据包中的文件分析提供帮助。 如果捕获的数据包中存在非文本类文件,例如png,jpg等图片文件,或者word,Excel等office文件异或是其他类型的二进…

Golang云原生项目:—实现ping操作

熟悉报文结构 ICMP校验和算法: 报文内容,相邻两个字节拼接到一起组成一个16bit数,将这些数累加求和若长度为奇数,则将剩余一个字节,也累加求和得出总和之后,将和值的高16位与低16位不断求和,直…

基于STM32 HAL库的FFT计算与数学运算:幅值、频率、均方根、平均值、最大值、最小值、峰峰值与标准差

一、用STM32进行FFT计算与数学运算的过程 1. 信号采集 首先,我们需要使用STM32的ADC模块来采集模拟信号,比如三相交流电。ADC将模拟信号(如电压或电流)转换为数字信号,供后续处理。 采样数量:FFT的计算通…

关于Github报错Verify your two-factor authentication (2FA) settings的解决方案

如果我们在使用GitHub出现2FA验证问题:Verify your two-factor authentication (2FA) settings,那么可以参考下面的解决方法解决问题。 当然,如果有国外的手机号直接使用验证码接收就可以,问题是不支持中国手机啊。那么怎么办呢&…

【机器学习chp2】贝叶斯最优分类器、概率密度函数的参数估计、朴素贝叶斯分类器、高斯判别分析。万字超详细分析总结与思考

前言,请先看。 本文的《一》《二》属于两个单独的知识点:共轭先验和Laplace平滑,主要因为他们在本文的后续部分经常使用,又因为他们是本人的知识盲点,所以先对这两个知识进行了分析,后续内容按照标题中的顺…

游戏引擎学习第16天

视频参考:https://www.bilibili.com/video/BV1mEUCY8EiC/ 这些字幕讨论了编译器警告的概念以及如何在编译过程中启用和处理警告。以下是字幕的内容摘要: 警告的定义:警告是编译器用来告诉你某些地方可能存在问题,尽管编译器不强制要求你修复…

01.防火墙概述

防火墙概述 防火墙概述1. 防火墙的分类2. Linux 防火墙的基本认识3. netfilter 中五个勾子函数和报文流向 防火墙概述 防火墙( FireWall ):隔离功能,工作在网络或主机边缘,对进出网络或主机的数据包基于一定的 规则检…

express 从0-1如何创建一个项目 注册接口

内容参考: windos下安装mysql express 使用mysql 一、创建一个空项目 二、创建一个包管理工具 npm init -y三、安装需要的插件及app.js的部分实现 npm i express 安装express 框架 npm i cors 安装cors 用于跨域 npm install mysql2 安装mysql数据库 npm i b…

Shell基础(4)

声明! 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团…

(长期更新)《零基础入门 ArcGIS(ArcMap) 》实验一(下)----空间数据的编辑与处理(超超超详细!!!)

续上篇博客(长期更新)《零基础入门 ArcGIS(ArcMap) 》实验一(上)----空间数据的编辑与处理(超超超详细!!!)-CSDN博客 继续更新 本篇博客内容为道路拓扑检查与修正&#x…

Python防检测之鼠标移动轨迹算法

一.简介 鼠标轨迹算法是一种模拟人类鼠标操作的程序,它能够模拟出自然而真实的鼠标移动路径。 鼠标轨迹算法的底层实现采用C/C语言,原因在于C/C提供了高性能的执行能力和直接访问操作系统底层资源的能力。 鼠标轨迹算法具有以下优势: 模拟…

3D编辑器教程:如何实现3D模型多材质定制效果?

想要实现下图这样的产品DIY定制效果,该如何实现? 可以使用51建模网线上3D编辑器的材质替换功能,为产品3D模型每个部位添加多套材质贴图,从而让3D模型在展示时实现DIY定制效果。 具体操作流程如下: 第1步:上…

Qt按钮类-->day09

按钮基类 QAbstractButton 标题与图标 // 参数text的内容显示到按钮上 void QAbstractButton::setText(const QString &text); // 得到按钮上显示的文本内容, 函数的返回就是 QString QAbstractButton::text() const;// 得到按钮设置的图标 QIcon icon() const; // 给按钮…

Cellebrite VS IOS18Rebooting

Cellebrite VS IOS18Rebooting我们想分享一些有关 iOS 18 重启“功能”的信息。在过去一周左右的时间里,人们对 iOS 18 中一项新的未记录功能产生了极大关注,该功能会导致设备在一段时间不活动后重新启动。 这意味着,如果设备在一定时间不活…

【Linux】:进程信号(详谈信号捕捉 OS 运行)

✨ 来去都是自由风,该相逢的人总会相逢 🌏 📃个人主页:island1314 🔥个人专栏:Linux—登神长阶 ⛺️ 欢迎关注:👍点赞…

视觉SLAM相机——单目相机、双目相机、深度相机

一、单目相机 只使用一个摄像头进行SLAM的做法称为单目SLAM,这种传感器的结构特别简单,成本特别低,单目相机的数据:照片。照片本质上是拍摄某个场景在相机的成像平面上留下的一个投影。它以二维的形式记录了三维的世界。这个过程中…

MongoDB在现代Web开发中的应用

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 MongoDB在现代Web开发中的应用 MongoDB在现代Web开发中的应用 MongoDB在现代Web开发中的应用 引言 MongoDB 概述 定义与原理 发展…

OceanBase 分区表详解

1、分区表的定义 在OceanBase数据库中,普通的表数据可以根据预设的规则被分割并存储到不同的数据区块中,同一区块的数据是在一个物理存储上。这样被分区块的表被称为分区表,而其中的每一个独立的数据区块则被称为一个分区。 如下图所示&…