均匀分布

简介

均匀分布是一种连续概率分布,表示在指定范围内的所有事件具有相等的发生概率。它常用于模拟随机事件,例如生成随机数或选择随机样本。

参数

均匀分布用两个参数来定义:

a:下限,表示分布的最小值。

b:上限,表示分布的最大值。

公式

均匀分布的概率密度函数 (PDF) 为:

f(x) = 1 / (b - a)    for a <= x <= b

其中:

f(x):表示在区间 [a, b] 内 x 点的概率密度。

a:分布的下限。

b:分布的上限。

生成均匀分布数据

NumPy 提供了 random.uniform() 函数来生成服从均匀分布的随机数。该函数接受以下参数:

low:分布的下限,默认为 0。

high:分布的上限,默认为 1。

size:输出数组的形状。

示例:生成 10 个介于 0 到 1 之间的均匀分布随机数:

import numpy as np

data = np.random.uniform(low=0, high=1, size=10)
print(data)

可视化均匀分布

Seaborn 库提供了便捷的函数来可视化分布,包括均匀分布。

示例:绘制 1000 个介于 0 到 1 之间的均匀分布随机数的分布图:

import seaborn as sns
import numpy as np data = np.random.uniform(low=0, high=1, size=1000)
sns.distplot(data)
plt.show()

练习

  1. 生成 500 个介于 -10 到 10 之间的均匀分布随机数,并绘制它们的分布图。
  2. 比较不同范围下均匀分布形状的变化。
  3. 利用均匀分布来模拟 100 次抛硬币的结果,并计算正面朝上的次数的概率。

解决方案

import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt # 1. 生成随机数并绘制分布图
data = np.random.uniform(low=-10, high=10, size=500)
sns.distplot(data)
plt.show() # 2. 比较不同范围下分布形状的变化
low_values = [-10, 0, 10]
high_values = [10, 20, 30]
for low, high in zip(low_values, high_values):
data = np.random.uniform(low=low, high=high, size=1000)
sns.distplot(data, label=f"[{low},{high}]")
plt.legend()
plt.show() # 3. 模拟抛硬币结果并计算正面朝上的次数概率
heads = np.random.uniform(low=0, high=1, size=100) > 0.5
print("正面朝上的次数:", heads.sum())
print("正面朝上的概率:", heads.mean())

逻辑分布

简介

逻辑分布,也称为Logistic分布,是一种连续概率分布,常用于建模具有 S 形增长特征的现象,例如生物种群增长、疫情发展等。它在机器学习中也具有广泛的应用,例如逻辑回归、神经网络等。

参数

逻辑分布用两个参数来定义:

loc:位置参数,表示分布的中心位置。默认为 0。

scale:尺度参数,控制分布的平坦程度。较大的尺度参数使分布更加平坦,两侧尾部更加分散。默认为 1。

公式

逻辑分布的概率密度函数 (PDF) 为:

f(x) = (scale / (π (1 + (x - loc) / scale)^2))    for all x

其中:

f(x):表示在所有实数 x 点的概率密度。

loc:分布的位置参数。

scale:分布的尺度参数。

生成逻辑分布数据

NumPy 提供了 random.logistic() 函数来生成服从逻辑分布的随机数。该函数接受以下参数:

loc:位置参数,默认为 0。

scale:尺度参数,默认为

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

NumPy 均匀分布模拟及 Seaborn 可视化教程的更多相关文章

  1. 国外大神制作的一个很棒的matplotlib 可视化教程

    国外大神制作的一个很棒的matplotlib 可视化教程 参考:https://www.machinelearningplus.com/plots/top-50-matplotlib-visualiz ...

  2. Darknet卷基层浅层特征可视化教程

    目录 Darknet浅层可视化教程 说明 处理步骤 使用python可视化txt文件 Darknet浅层可视化教程 说明 针对YOLO官方提供的c语言版的darknet进行了修改,添加了一些函数,进行 ...

  3. Python - Seaborn可视化:图形个性化设置的几个小技巧

    1 概述 在可视化过程中,经常会对默认的制图效果不满意,希望能个性化进行各种设置. 本文通过一个简单的示例,来介绍seaborn可视化过程中的个性化设置.包括常用的设置,如: 设置图表显示颜色 设置图 ...

  4. PJ可能会考的模拟与枚举-自学教程

    PJ可能会考的模拟与枚举-自学教程 文/Pleiades_Antares 之前学校里看一个小可爱复习的时候偷偷听来着XD 简单记了一下重点吧,希望能对看官您有所帮助XD 以下⬇️是几个复习时讲过的题, ...

  5. seaborn可视化

    文章来自https://blog.csdn.net/qq_33120943/article/details/76569756 详细教程可以查看官方额示例:http://seaborn.pydata.o ...

  6. seaborn可视化特征的相关性

    import seaborn as sn sn.heatmap(trainX.corr(),vmax=1,square=True)

  7. VM虚拟机网卡LAN区段模拟内网使用教程

    目录   1. 测试环境   2. 设置LAN区段并测试    2.1. 添加LAN区段    2.2. 在虚拟机中设置静态IP地址    2.3. 测试同一LAN区段的主机是否可以联通    2.4 ...

  8. 使用Fiddler模拟弱网测试教程

    一.下载抓包工具Fiddler 官网下载链接:https://www.telerik.com/fiddler 二.设置Fiddler Tools>>Connections  然后修改监听端 ...

  9. echarts 移动端地图数据可视化教程

    如上效果图: 以下未代码: <!doctype html> <html lang="en">   <head> <meta charset ...

  10. Git可视化教程——Git Gui的使用

    参考链接:https://blog.csdn.net/qq_34842671/article/details/70916587

随机推荐

  1. redis 简单整理——哨兵部署业务图[二十九]

    前言 简单介绍一下哨兵的部署业务图,非部署步骤. 正文 看一下部署的拓扑图: 然后这里用docker 来部署一下哨兵模式. 搭建一主二从. version: '3.7' services: maste ...

  2. Ajax 原理是什么?如何实现?

    一.是什么 AJAX全称(Asynchronous Javascript And XML) 即异步的JavaScript 和XML,是一种创建交互式网页应用的网页开发技术,可以在不重新加载整个网页的情 ...

  3. 跨模态学习能力再升级,EasyNLP电商文图检索效果刷新SOTA

    简介: 本⽂简要介绍我们在电商下对CLIP模型的优化,以及上述模型在公开数据集上的评测结果.最后,我们介绍如何在EasyNLP框架中调用上述电商CLIP模型. 作者:熊兮.欢夏.章捷.临在 导读 多模 ...

  4. 迁移 Express 到函数计算

    首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传.函数计算准备计 ...

  5. 国内唯一连续入选Gartner,Quick BI是如何做到的?

    ​简介:阿里云Quick BI凭借灵活的公共云部署,私有化独立部署能力.无缝对接各类云上数据库和自建数据库.可视化搭建分析.高效数据处理能力与强大数据计算能力,使得在2022年持续入选Gartner ...

  6. SpringBoot Admin2.0 集成 Java 诊断神器 Arthas 实践

    简介: 项目最初使用 Arthas 主要有两个目的: 1. 通过 arthas 解决实现测试环境.性能测试环境以及生产环境性能问题分析工具的问题. 2. 通过使用 jad.mc.redefine 功能 ...

  7. k8s核心资源Job&&CronJob调度pod

    一.Job与CronJob概念与与原理解读 Job 控制器用于管理 Pod 对象运行一次性任务,比方说我们对数据库备份,可以直接在 k8s 上启动一个 mysqldump 备份程序,也可以启动一个 p ...

  8. 引爆你的网页乐趣!前端十个令人捧腹的JavaScript整蛊代码。

    愚人节整蛊代码.想要在网页上增添一抹幽默与惊喜吗?或是想给你的朋友一个意想不到的"小惊喜"?那么,这十款简单而有趣的JavaScript前端整蛊代码绝对能满足你的需求!每一个代码都 ...

  9. Competition Set - Codeforces

    这里记录的是这个账号的比赛情况. Codeforces Round 942 (Div. 1) Solved:6/8,AB1B2CDE1 2645-> A 题意:现有 \(a_i\) 张写有 \( ...

  10. gprMax电磁波正演模拟方法

    文章首发于:https://blog.zhaoxuan.site/archives/37.html: 第一时间获取最新文章请关注博客个人站:https://blog.zhaoxuan.site. 目录 ...