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

python实现常见一元随机变量的概率分布

一. 随机变量

随机变量是一个从样本空间 Ω \Omega Ω到实数空间 R R R的函数,比如随机变量 X X X可以表示投骰子的点数。随机变量一般可以分为两类:

  • 离散型随机变量:随机变量的取值为有限个。
  • 连续型随机变量:随机变量的取值是连续的,有无限多个。

scipy.stat模块中包含了多种概率分布的随机变量,包含离散型随机变量和连续型随机变量。离散型随机变量的常见接口如下:

方法名功能
rvs生成该分布的随机序列
pmf概率质量函数
cdf累计概率分布函数
stats计算该分布的均值,方差,偏度,峰度。[Mean(‘m’), variance(‘v’), skew(‘s’), kurtosis(‘k’)]

连续型随机变量的常见接口如下:

方法名功能
rvs生成该分布的随机序列
pdf概率密度函数
cdf累计概率分布函数
stats计算该分布的均值,方差,偏度,峰度。[Mean(‘m’), variance(‘v’), skew(‘s’), kurtosis(‘k’)]
二. 常见离散分布
1. 二项分布

如果随机变量 X X X的分布律为 P ( X = k ) = C n k p k q n − k , k = 0 , 1 , . . . n , P(X=k) = C^k_np^kq^{n-k},k = 0,1,...n, P(X=k)=Cnkpkqnkk=0,1,...n其中 p + q = 1 p + q = 1 p+q=1 ,则称 X X X服从参数为 n , p n,p n,p的二项分布,记为 X ∼ B ( n , p ) X \sim B(n,p) XB(n,p)

  • 期望: E ( X ) = n p E(X) = np E(X)=np
  • 方差: D ( X ) = n p ( 1 − p ) D(X) = np(1 - p) D(X)=np(1p)
  1. 画出不同参数下的二项分布, n , p n, p n,p分别为 ( 10 , 0.3 ) , ( 10 , 0.5 ) , ( 10 , 0.7 ) (10,0.3),(10,0.5),(10,0.7) (100.3),100.5,100.7

    import numpy as np
    from scipy.stats import binom
    import matplotlib.pyplot as pltplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(3, 1, figsize = (10, 10))# 调整子图间距fig.subplots_adjust(hspace = 0.5)params = [(10, 0.3), (10, 0.5), (10, 0.7)]for i in range(len(params)):n = params[i][0]p = params[i][1]x = np.arange(0, n + 1)y = binom(n, p).pmf(x)# 计算随机变量的期望,方差mean, var = binom.stats(n, p, moments='mv')ax[i].scatter(x, y, color = 'blue', marker = 'o')ax[i].set_title('n = {}, p = {}'.format(n, p))ax[i].set_xticks(x)ax[i].text(1, 0.2, '期望: {:.2f}\n方差: {:.2f}'.format(mean, var))ax[i].grid()plt.show()
    

    运行结果:
    在这里插入图片描述

  2. 生成服从不同参数二项分布的随机数组(采样100000次),然后查看数组的频率分布

    import numpy as np
    from scipy.stats import binom
    import matplotlib.pyplot as pltplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(3, 1, figsize = (10, 10))# 调整子图间距fig.subplots_adjust(hspace = 0.5)params = [(10, 0.3), (10, 0.5), (10, 0.7)]for i in range(len(params)):n = params[i][0]p = params[i][1]x = np.arange(0, 11)# 抽样10万次sample = binom.rvs(n = n, p = p, size = 100000)print(sample)ax[i].hist(sample, color = 'blue', density=True, bins = 50)ax[i].set_title('n = {}, p = {}'.format(n, p))ax[i].set_xticks(x)ax[i].grid()plt.show()
    

    运行结果:
    在这里插入图片描述

2. 几何分布

若随机变量 X X X的分布律为 P ( X = k ) = ( 1 − p ) k − 1 p , k = 1 , 2 , . . . , P(X = k) = (1 - p)^{k - 1}p,k = 1, 2, ..., P(X=k)=(1p)k1pk=1,2,...其中 0 < p < 1 0 < p < 1 0<p<1,则称 X X X服从参数为 p p p的几何分布,记为 X ∼ G e ( p ) X \sim Ge(p) XGe(p)

  • 期望: E ( X ) = 1 p E(X) = \frac{1}{p} E(X)=p1
  • 方差: D ( X ) = 1 − p p 2 D(X) = \frac{1 - p}{p^2} D(X)=p21p
  1. 画出不同参数下的几何分布, p p p分别为 ( 0.3 , 0.5 , 0.7 ) (0.3,0.5,0.7) (0.30.50.7)

    import numpy as np
    from scipy.stats import geom
    import matplotlib.pyplot as pltplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(3, 1, figsize = (10, 10))# 调整子图间距fig.subplots_adjust(hspace = 0.5)params = [0.3,0.5,0.7]for i in range(len(params)):p = params[i]x = np.arange(1, 15)y = geom(p = p).pmf(x)print(y)# 计算随机变量的期望,方差mean, var = geom.stats(p = p, moments='mv')ax[i].scatter(x, y, color = 'blue', marker = 'o')ax[i].set_title('p = {}'.format(p))ax[i].set_xticks(x)ax[i].text(5, 0.2, '期望: {:.2f}\n方差: {:.2f}'.format(mean, var))ax[i].grid()plt.show()
    

    运行结果:
    在这里插入图片描述

  2. 生成服从不同参数几何分布的随机数组(采样100000次),然后查看数组的频率分布

    import numpy as np
    from scipy.stats import geom
    import matplotlib.pyplot as pltplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(3, 1, figsize = (10, 10))# 调整子图间距fig.subplots_adjust(hspace = 0.5)params = [0.3, 0.5, 0.7]for i in range(len(params)):p = params[i]x = np.arange(0, 15)# 抽样sample = geom.rvs(p = p, size = 100000)print(sample)ax[i].hist(sample, color = 'blue', density=True, bins = 50)ax[i].set_title('p = {}'.format(p))ax[i].set_xlim(0,15)ax[i].set_xticks(x)ax[i].grid()plt.show()
    

    运行结果:
    在这里插入图片描述

3. 泊松分布

若随机变量 X X X的分布律为 P ( X = k ) = λ k k ! e − λ , k = 0 , 1 , 2... , P(X=k) = \frac{\lambda^k}{k!}e^{-\lambda},k = 0, 1, 2 ..., P(X=k)=k!λkeλk=0,1,2...其中 λ > 0 , \lambda > 0, λ>0则称 X X X服从参数为 λ \lambda λ的泊松分布,记为 X ∼ P ( λ ) X \sim P(\lambda) XP(λ)

  • 期望: E ( X ) = λ E(X) = \lambda E(X)=λ
  • 方差: D ( X ) = λ D(X) = \lambda D(X)=λ
  1. 画出不同参数下的泊松分布, λ \lambda λ分别为 ( 2 , 6 , 8 ) (2,6,8) (2,6,8)

    import numpy as np
    from scipy.stats import poisson
    import matplotlib.pyplot as pltplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(3, 1, figsize = (10, 10))# 调整子图间距fig.subplots_adjust(hspace = 0.5)params = [2,6,8]for i in range(len(params)):numda = params[i]x = np.arange(1, 15)y = poisson(numda).pmf(x)# 计算随机变量的期望,方差mean, var = poisson.stats(numda, moments='mv')ax[i].scatter(x, y, color = 'blue', marker = 'o')ax[i].set_title('lambda = {}'.format(numda))ax[i].set_xticks(x)ax[i].set_yticks([0, 0.1, 0.2, 0.3, 0.4])ax[i].text(5, 0.2, '期望: {:.2f}\n方差: {:.2f}'.format(mean, var))ax[i].grid()plt.show()
    

    运行结果:
    在这里插入图片描述

  2. 生成服从不同参数泊松分布的随机数组(采样100000次),然后查看数组的频率分布

    import numpy as np
    from scipy.stats import poisson
    import matplotlib.pyplot as pltplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(3, 1, figsize = (10, 10))# 调整子图间距fig.subplots_adjust(hspace = 0.5)params = [2, 6, 8]for i in range(len(params)):numda = params[i]x = np.arange(0, 16)# 抽样sample = poisson.rvs(numda, size = 1000000)print(sample)ax[i].hist(sample, color = 'blue', density=True, bins = 50)ax[i].set_title('lamdba = {}'.format(numda))ax[i].set_xticks(x)ax[i].set_xlim(0, 16)ax[i].grid()plt.show()
    

    运行结果:
    在这里插入图片描述

三. 常见连续分布
1. 正太分布

若随机变量 X X X的概率密度函数为 f ( x ) = 1 2 π δ e − ( x − μ ) 2 2 δ 2 , ( − ∞ < x < + ∞ ) f(x) = \frac{1}{\sqrt{2\pi}\delta}e^{- \frac{(x - \mu)^2}{2\delta^2}},( -\infty< x < +\infty) f(x)=2π δ1e2δ2(xμ)2(<x<+),则称 X X X服从参数为 ( μ , δ 2 ) (\mu,\delta^2) (μδ2)的正太分布,记为 X ∼ N ( μ , δ 2 ) X \sim N(\mu,\delta^2) XN(μδ2)。当 μ = 0 , δ = 1 \mu =0,\delta = 1 μ=0δ=1时称 X X X服从标准正太分布。

  • 期望: E ( X ) = μ E(X) = \mu E(X)=μ
  • 方差: D ( X ) = δ 2 D(X) = \delta^2 D(X)=δ2
  1. 画出不同参数下的正太分布, μ , δ \mu,\delta μδ分别为 ( 0 , 1 ) , ( 0 , 3 ) (0, 1), (0, 3) (0,1),(0,3)

    import numpy as np
    from scipy.stats import norm
    import matplotlib.pyplot as pltplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(figsize=(10, 8))params = [(0, 1, 'red'), (0, 3, 'blue')]x = np.linspace(-20, 20, 1000)for i in range(0, len(params)):loc = params[i][0]scale = params[i][1]color = params[i][2]mean, var = norm.stats(loc, scale, moments='mv')ax.plot(x, norm(loc = loc, scale = scale).pdf(x), color = color, label = 'loc={},scale={},均值={},方差={}'.format(loc, scale,mean,var))ax.set_xticks(np.arange(-20, 21))ax.grid()ax.legend()plt.show()
    

    运行结果:
    在这里插入图片描述

  2. 生成服从不同参数正太分布的随机数组(采样100000次),然后查看数组的频率分布

    import numpy as np
    from scipy.stats import norm
    import matplotlib.pyplot as pltplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(2, 1, figsize=(10, 8))params = [(0, 1, 'red'), (0, 3, 'blue')]x = np.linspace(-20, 20, 1000)# 采样for i in range(0, len(params)):loc = params[i][0]scale = params[i][1]color = params[i][2]# 画出分布图ax[i].plot(x, norm(loc = loc, scale = scale).pdf(x), color = color, label = 'loc={},scale={}'.format(loc, scale))# 画出随机抽样的频率分布直方图ax[i].hist(norm(loc = loc, scale = scale).rvs(size = 100000), density=True, bins = 100)ax[i].set_xticks(np.arange(-20, 21))ax[i].grid()ax[i].legend()plt.show()
    

    运行结果:
    在这里插入图片描述

2. 指数分布

若随机变量 X X X的概率密度函数为 f ( x ) = { λ e − λ x x ≥ 0 0 x < 0 ( λ > 0 ) f(x) = \begin{cases} {\lambda}e^{-{\lambda}x} & x \ge 0\\0 & x < 0\end{cases} (\lambda > 0) f(x)={λeλx0x0x<0(λ>0),则称 X X X服从参数为 λ \lambda λ的指数分布,记为 X ∼ E ( λ ) X \sim E(\lambda) XE(λ)

  • 期望: E ( X ) = 1 λ E(X) = \frac{1}{\lambda} E(X)=λ1
  • 方差: D ( X ) = 1 λ 2 D(X) = \frac{1}{{\lambda}^2} D(X)=λ21

scipy中指数分布expon的参数传入 λ \lambda λ的倒数。

A common parameterization for expon is in terms of the rate parameter lambda, such that pdf = lambda * exp(-lambda * x). This parameterization corresponds to using scale = 1 / lambda.

  1. 画出不同参数下的指数分布, λ \lambda λ分别为 ( 0.5 , 1 , 1.5 ) (0.5,1,1.5) (0.5,1,1.5)

    import numpy as np
    import matplotlib.pyplot as plt
    from scipy.stats import exponplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(figsize = (10, 8))params = [(0.5, 'red'), (1, 'blue'), (1.5, 'green')]x = np.linspace(0, 15, 1000)for i in range(0, len(params)):numda = params[i][0]color = params[i][1]mean, var = expon.stats(loc = 0, scale = 1 / numda, moments='mv')ax.plot(x, expon(scale = 1 / numda).pdf(x), color = color, label = 'lambda = {:.2f}, 均值:{:.2f}, 方差: {:.4f}'.format(numda, mean, var))ax.grid()ax.legend()plt.show()
    

    运行结果:
    在这里插入图片描述

  2. 生成服从不同参数指数分布的随机数组(采样100000次),然后查看数组的频率分布

    import numpy as np
    import matplotlib.pyplot as plt
    from scipy.stats import exponplt.rcParams["font.family"] = "SimHei"  # 设置字体
    plt.rcParams["axes.unicode_minus"] = False  # 正常显示负号if __name__ == '__main__':fig, ax = plt.subplots(3, 1, figsize = (10, 8))params = [(0.5, 'red'), (1, 'blue'), (1.5, 'green')]x = np.linspace(0, 15, 1000)# 采样for i in range(0, len(params)):numda = params[i][0]color = params[i][1]ax[i].plot(x, expon(scale = 1/numda).pdf(x), color = color, label = 'lambda={}'.format(numda))ax[i].hist(expon(scale = 1/numda).rvs(size = 10000), density=True, bins = 100)ax[i].set_xticks(np.arange(0, 15))ax[i].set_xlim(0, 15)ax[i].grid()ax[i].legend()plt.show()

    运行结果:
    在这里插入图片描述

相关文章:

python实现常见一元随机变量的概率分布

一. 随机变量 随机变量是一个从样本空间 Ω \Omega Ω到实数空间 R R R的函数&#xff0c;比如随机变量 X X X可以表示投骰子的点数。随机变量一般可以分为两类&#xff1a; 离散型随机变量&#xff1a;随机变量的取值为有限个。连续型随机变量&#xff1a;随机变量的取值是连…...

微服务学习

SpringCloud组成 服务注册与发现&#xff1a;consul 阿里Nacos 服务调用和负载均衡&#xff1a;OpenFeign LoadBalance 分布式事务&#xff1a;阿里Seata 服务熔断和降级:阿里Sentinel Circuit Breaker 服务链路追踪&#xff1a;Micrometer Tracing 服务网关&#xff1a;GateWa…...

【.NET Core】深入理解IO - 读取器和编写器

【.NET Core】深入理解IO - 读取器和编写器 文章目录 【.NET Core】深入理解IO - 读取器和编写器一、概述二、BinaryReader和BinaryWriter2.1 BinartReader类2.2 BinaryWriter类 三、StreamReader和StreamWriter3.1 StreamReader类3.1 StreamWriter类StreamWriter类构造函数Str…...

【Java项目介绍和界面搭建】拼图小游戏——添加图片

&#x1f36c; 博主介绍&#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 hacker-routing &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】 &#x1f389;点赞➕评论➕收藏 …...

「MySQL」基本操作类型

&#x1f387;个人主页&#xff1a;Ice_Sugar_7 &#x1f387;所属专栏&#xff1a;数据库 &#x1f387;欢迎点赞收藏加关注哦&#xff01; 数据库的操作 创建、显示数据库 使用 create 创建一个数据库 create database goods;然后可以用 show databases 来查看已经创建的数…...

Android 14 权限

问题Android 14 按照视频播放类的应用 无法获取到权限。 原因是从 Android 13 开始&#xff0c;如果你的应用程序 targetSdk 指定到了 33 或以上&#xff0c;那么 READ_EXTRERNAL_STORGE 权限就完全失去了作用&#xff0c;申请它将不会产生任何效果。 与此相对应的&#xff0c…...

Springboot整合SSE实现实时消息推送

SSE详细介绍传送门&#xff1a;SSE实时消息推送 简单描述一下SSE推送在实际项目中应用的常见场景 1&#xff0c;项目页面中有消息通知板块&#xff0c;当信息有变化时&#xff0c;只有手动刷新页面&#xff0c;才会看到最新的数据&#xff0c;这里可以采用SSE技术实时推送最新…...

在pytorch中利用GPU训练神经网络时代码的执行顺序并提高训练效率

在pytorch中利用GPU训练神经网络时代码的执行顺序并提高训练效率 在 PyTorch 中&#xff0c;大多数操作在 GPU 上默认是异步执行的&#xff0c;但这并不意味着它们是并行执行的。要理解代码是同步还是异步执行&#xff0c;以及是串行还是并行执行&#xff0c;我们需要考虑几个…...

vue3学习

距离vue2学习已经一年度了&#xff0c;现在开始vue3的学习。 一、webpack &#xff08;1&#xff09;创建列表隔行变色项目及webpack使用&#xff1a; 新建项目空白目录&#xff0c;并运行npm init -y命令&#xff0c;初始化包管理配置文件package.json&#xff1b; 新建sr…...

毫秒生成的时间戳如何转化成东八区具体时间

假设现在有一个时间是1709101071419L 后端代码实现 Java代码&#xff08;东八区时间&#xff09; 在Java代码中&#xff0c;我们将时区从UTC调整为东八区&#xff08;UTC8&#xff09;&#xff1a; import java.time.Instant; import java.time.ZoneId; import java.time.Z…...

02. Nginx入门-Nginx安装

Nginx安装 yum安装 编辑yum环境 cat > /etc/yum.repos.d/nginx.repo << EOF [nginx-stable] namenginx stable repo baseurlhttp://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck1 enabled1 gpgkeyhttps://nginx.org/keys/nginx_signing.key module_…...

leetcode73. 矩阵置零

链接见&#xff1a;https://leetcode.cn/problems/set-matrix-zeroes/description/ 题目描述 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 AC代码 class Solution { public:void setZeroes(vec…...

【中间件】RabbitMQ入门

&#x1f4dd;个人主页&#xff1a;五敷有你 &#x1f525;系列专栏&#xff1a;中间件 ⛺️稳中求进&#xff0c;晒太阳 MQ的优劣&#xff1a; 优势 应用解耦&#xff1a;提升了系统容错性和可维护性异步提速&#xff1a;提升用户体验和系统吞吐量消峰填谷&#xff1…...

rtt的io设备框架面向对象学习-电阻屏LCD设备

目录 1.8080通信的电阻屏LCD设备1.1 构造流程1.2 使用2.i2c和spi通信的电阻屏LCD 电阻屏LCD通信接口有支持I2c、SPI和8080通信接口的。 1.8080通信的电阻屏LCD设备 lcd这块不像其他设备类&#xff0c;rtt没有实现的设备驱动框架层&#xff0c;那么是在驱动层直接实现的。 以…...

商城免费搭建之java商城 java电子商务Spring Cloud+Spring Boot+mybatis+MQ+VR全景

1. 涉及平台 平台管理、商家端&#xff08;PC端、手机端&#xff09;、买家平台&#xff08;H5/公众号、小程序、APP端&#xff08;IOS/Android&#xff09;、微服务平台&#xff08;业务服务&#xff09; 2. 核心架构 Spring Cloud、Spring Boot、Mybatis、Redis 3. 前端框架…...

蓝桥杯刷题--python-16

562. 壁画 - AcWing题库 Tint(input()) j1 while(j<T): N int(input()) ainput() s [0]*(N1) # 求前戳和 for i in range(1, N 1): s[i] int(a[i-1]) s[i - 1] # 枚举 # 区间 max_ float(-inf) k (N 2 - 1) // 2 for i in …...

闰年计算中的计算机Bug

不知道你有没有看过凯瑟琳泽塔琼斯主演的《偷天陷阱》&#xff0c;里面主题思想是用银行结算系统的千年虫bug&#xff0c;精心设计&#xff0c;盗取银行几十亿的精彩动作片。所谓2000 年千禧年的千年虫&#xff0c;其实就是计算机计算闰年的bug。 这个闰年计算的历史源远流长&…...

python水表识别图像识别深度学习 CNN

python水表识别&#xff0c;图像识别深度学习 CNN&#xff0c;Opencv,Keras 重点&#xff1a;项目和文档是本人近期原创所作&#xff01;程序可以将水表图片里面的数据进行深度学习&#xff0c;提取相关信息训练&#xff0c;lw1.3万字重复15%&#xff0c;可以直接上交那种&…...

Java对接快递100实时快递单号查询API接口

目录 1.引入依赖 2.定义配置信息 3.模块结构 4.Controller 5.Service实现类 6.返回数据dto以及dto中的数据dto 7.测试运行 今天也是接到了这个任务&#xff0c;官网有小demo&#xff0c;可以下载下来参考test中代码 官方文档地址&#xff1a; 实时快递查询接口技术文档…...

Redis常见的15个【坑】,避坑指南

一、常见命令 1.1 过期时间意外丢失 原因&#xff1a; SET命令如果不设置过期时间&#xff0c;那么Redis会自动【擦除】这个key的过期时间 1.2 DEL命令阻塞redis key是String类型时&#xff0c;DEL时间复杂度是O(1)key是List/Hash/Set/ZSet类型&#xff0c;DEL时间复杂度是…...

手游刚开服就被攻击怎么办?如何防御DDoS?

开服初期是手游最脆弱的阶段&#xff0c;极易成为DDoS攻击的目标。一旦遭遇攻击&#xff0c;可能导致服务器瘫痪、玩家流失&#xff0c;甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案&#xff0c;帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中&#xff0c;我们已经大致实现了rpc服务端的各项功能代…...

模型参数、模型存储精度、参数与显存

模型参数量衡量单位 M&#xff1a;百万&#xff08;Million&#xff09; B&#xff1a;十亿&#xff08;Billion&#xff09; 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的&#xff0c;但是一个参数所表示多少字节不一定&#xff0c;需要看这个参数以什么…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面&#xff0c;开源代码 作为一个电子罗盘模块&#xff0c;我们可以通过I2C从中获取偏航角yaw&#xff0c;相对于六轴陀螺仪的yaw&#xff0c;qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候&#xff0c;难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵&#xff0c;或者买了二手 iPhone 却被原来的 iCloud 账号锁住&#xff0c;这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话&#xff1a; “利润不是赚出来的&#xff0c;是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业&#xff0c;很多企业看着销售不错&#xff0c;账上却没钱、利润也不见了&#xff0c;一翻库存才发现&#xff1a; 一堆卖不动的旧货…...

相机从app启动流程

一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战

在现代战争中&#xff0c;电磁频谱已成为继陆、海、空、天之后的 “第五维战场”&#xff0c;雷达作为电磁频谱领域的关键装备&#xff0c;其干扰与抗干扰能力的较量&#xff0c;直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器&#xff0c;凭借数字射…...

Mysql中select查询语句的执行过程

目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析&#xff08;Parser&#xff09; 2.4、执行sql 1. 预处理&#xff08;Preprocessor&#xff09; 2. 查询优化器&#xff08;Optimizer&#xff09; 3. 执行器…...

R 语言科研绘图第 55 期 --- 网络图-聚类

在发表科研论文的过程中&#xff0c;科研绘图是必不可少的&#xff0c;一张好看的图形会是文章很大的加分项。 为了便于使用&#xff0c;本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中&#xff0c;获取方式&#xff1a; R 语言科研绘图模板 --- sciRplothttps://mp.…...