在MATLAB产生正态(Gauss)分布随机数

这篇具有很好参考价值的文章主要介绍了在MATLAB产生正态(Gauss)分布随机数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


一、前言

在 MATLAB 中内置了有产生标准正态(Gauss)分布的随机数函数,使用方法如下:

randn(m, n, p)

其中 m、n 为产生矩阵的行数和列数,p 为产生矩阵的个数,产生的矩阵中的每个元素均为服从 N ( 0 , 1 ) N(0, 1) N(0,1) 的标准正态分布的元素。


二、标准正态(Gauss)分布随机数

使用如下命令产生一个 100x1 的服从标准正态(Gauss)分布的随机数矩阵:

A = randn(100, 1)

绘制图像效果如下:

matlab生成正态分布随机数,MATLAB数据分析,matlab,矩阵,概率论
可以看到这里随机数服从均值为 0,方差为 1 的标准正态分布。


三、给定均值、方差的正态(Gauss)分布

假设 X ∼ N ( 0 , 1 ) X\sim N(0,1) XN(0,1),则 3 X + 3 3X+3 3X3 服从 N ( 3 , 9 ) N(3,9) N(3,9) 分布,因此我们要产生服从 N ( μ , σ 2 ) N(\mu,\sigma^2) N(μ,σ2) 的随机数,可以通过如下变换得到:
σ X + μ ∼ N ( μ , σ 2 ) \sigma X+\mu \sim N(\mu,\sigma^2) σX+μN(μ,σ2)
因此我们若想得到服从 N ( 1 , 2 ) N(1,2) N(1,2) 的正态分布随机数,可以使用如下命令:

A = sqrt(2) * randn(100, 1) + 1

效果图如下:

matlab生成正态分布随机数,MATLAB数据分析,matlab,矩阵,概率论

其他的比如 N ( 2 , 4 ) N(2,4) N(2,4) 的随机数:

A = 2 * randn(100, 1) + 2

大致都能通过如下变换得到,绘制图像的命令如下:

norm = histfit(A,10,'normal')

四、总结

不喜欢写总结。文章来源地址https://www.toymoban.com/news/detail-786507.html

到了这里,关于在MATLAB产生正态(Gauss)分布随机数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 如何在 MATLAB 中生成指定范围内的随机数

    如何在 MATLAB 中生成指定范围内的随机数 在 MATLAB 中,我们可以使用内置函数来生成指定范围内的随机数。这些函数包括 rand 、 randi 和 randn ,它们分别用于生成在[0,1)范围内的均匀分布随机数、在指定范围内的整数随机数以及符合标准正态分布的随机数。 下面我将为你展示如

    2024年02月06日
    浏览(11)
  • Qt产生随机数

    提问: 有没有小伙伴遇到这么一种情况,使用rand()和qrand()函数生成的随机数好像不是那么随机,每次都一样。那这种就叫做“伪随机”,因为没有种随机数种子,所以系统默认随机数种子是固定值。 在Qt项目中呢,生成随机数有两个步骤: 1.使用qsrand()种随机数种子 2.调用

    2024年02月11日
    浏览(12)
  • STM32产生随机数

    STM32有2种方式产生随机数:硬件方式和软件方式 其中软件方式可以通过C语言标准函数 stdlib.h 的 srand() 和 rand() 来获取随机数,使用步骤为: 使用 srand(seed) 来设置随机数种子。我们知道种子不改变的时候,产生多个随机数的时候,第一次产生的数字是随机的,后面产生的都与

    2024年02月12日
    浏览(9)
  • STM32 产生随机数方式

    STM32 产生随机数方式

    C语言的stdlib.h库里的srand(unsigned seed)和rand(void)函数,可以配合产生伪随机数。其中srand(seed)产生算法种子,再由rand()通过算法产生随机数,产生的随机数在宏定义RAND_MAX范围内。如果seed不变,则产生的随机数不变。 这里介绍STM32 HAL库环境的随机数产生代码,采用STM32CUBEIDE开发

    2024年02月09日
    浏览(10)
  • C语言rand()函数产生随机数详解

    C语言rand()函数产生随机数详解

    rand函数的原型: rand函数的功能: 用来产生一个随机数 rand函数的界限: stdlib.h头文件中有宏#define RAND_MAX 0x7fff,这表示rand产生一个0-0x7fff的随机数,即最大是32767的一个数 rand函数获取随机数的基础用法为: a是一个整数,返回值为0到a的随机数,包含0,但不包含a。 如果想要

    2024年02月06日
    浏览(8)
  • 【安全密钥交换协议】基尔霍夫定律-约翰逊噪声(KLJN)方案的随机数生成器攻击研究(Matlab代码实现)

    【安全密钥交换协议】基尔霍夫定律-约翰逊噪声(KLJN)方案的随机数生成器攻击研究(Matlab代码实现)

     💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 2.1 算例1 2.2 算例2  2.3 算例3 🎉3 参考文

    2024年02月04日
    浏览(17)
  • 基于FPGA的LFSR16位伪随机数产生算法实现,可以配置不同的随机数种子和改生成多项式,包含testbench

    基于FPGA的LFSR16位伪随机数产生算法实现,可以配置不同的随机数种子和改生成多项式,包含testbench

    目录 1.算法仿真效果 2.算法涉及理论知识概要 3.Verilog核心程序 4.完整算法代码文件 vivado2019.2仿真结果如下:           LFSR(线性反馈移位寄存器)提供了一种在微控制器上快速生成非序列数字列表的简单方法。生成伪随机数只需要右移操作和 XOR 操作。LFSR 完全由其多项式

    2024年02月11日
    浏览(11)
  • C语言随机数的产生(rand、srand、time函数细节讲解)

    C语言随机数的产生(rand、srand、time函数细节讲解)

    先上代码,再详细解释: 我们先来查询下rand函数 网站旧版我放在这儿,可以查询库函数等https://legacy.cplusplus.com/reference/cstring/strcat/ rand函数的头文件是stdlib.h。 rand函数无需传参数,返回类型是一个伪随机的整数范围是0到RAND_MAX。那这个RAND_MAX所对应的值是多少呢?我们同样

    2024年02月08日
    浏览(10)
  • 【安全密钥】对基尔霍夫-洛-约翰逊噪声(KLJN)安全密钥交换协议的统计随机数生成器攻击(Matlab代码实现)

    【安全密钥】对基尔霍夫-洛-约翰逊噪声(KLJN)安全密钥交换协议的统计随机数生成器攻击(Matlab代码实现)

    💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码、数据、文章

    2024年04月12日
    浏览(17)
  • Google Earth Engine(GEE)——土地分类精度分析randomColumn产生伪随机数然后进行混淆矩阵计算

    Google Earth Engine(GEE)——土地分类精度分析randomColumn产生伪随机数然后进行混淆矩阵计算

    我们在进行土地分类时,需要进行精度验证,但是之前我们要进行样本点的随机分类,也就是分出一部分作为训练样本另外一部分作为,这是我们要想产生随机种子赋值给我们所选定的训练样本,这样我们就可以随机将样本进行分成训练样本和验证样本,而我们使用的函数

    2024年02月09日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包