Matlab中random函数的使用

Matlab中random函数的使用原文随机数生成方法:第一种方法是用random语句,其一般形式为              y=random(‘分布的英文名’,A1,A2,A3,m,n),表示生成m行n列的m×n个参数为(A1,A2,A3)的该分布的随机数。例如:(1)R=random(‘Normal’,0,1,2,4):生成期望为0,标准差为1的(2行4…

大家好,又见面了,我是你们的朋友全栈君。原文

随机数生成方法:


第一种方法是用 random 语句,其一般形式为
                     y = random(‘分布的英文名’,A1,A2,A3,m,n),
表示生成 m 行 n 列的 m × n 个参数为 ( A1 , A2 , A3 ) 的该分布的随机数。例如:
(1) R = random(‘Normal’,0,1,2,4): 生成期望为 0,标准差为 1 的(2 行 4 列)2× 4 个正态随机数
(2) R = random(‘Poisson’,1:6,1,6):  依次生成参数为 1 到 6 的(1 行 6 列)6 个 Poisson 随机数


第二种方法是针对特殊的分布的语句:
一. 几何分布随机数  (下面的 P,m 都可以是矩阵)
   R = geornd(P)   (生成参数为 P 的几何随机数)
   R = geornd(P,m)  (生成参数为 P 的 × m 个几何随机数)
                                     1
   R = geornd(P,m,n)  (生成参数为 P 的 m 行 n 列的 m × n 个几何随机数)
    例如
(1)  R = geornd(1./ 2.^(1:6)) ( 生成参数依次为 1/2,1/2^2,到 1/2^6 的 6 个几何随机数)
(2)  R = geornd(0.01,[1 5]) (生成参数为 0.01 的(1行5列)5 个几何随机数).


二.Beta 分布随机数
R = betarnd(A,B)  (生成参数为 A,B 的 Beta 随机数)
R = betarnd(A,B,m)  (生成 × m 个数为 A,B 的 Beta 随机数)
                           1
R = betarnd(A,B,m,n)  (生成 m 行 n 列的 m × n 个数为 A,B 的 Beta 随机数).


三.正态随机数
R = normrnd(MU,SIGMA)  (生成均值为 MU,标准差为 SIGMA 的正态随机数)
R = normrnd(MU,SIGMA,m)  (生成 1× m 个正态随机数)
                                      
R = normrnd(MU,SIGMA,m,n) (生成 m 行 n 列的 m × n 个正态随机数)
   例如
(1) R = normrnd(0,1,[1 5])   生成 5 个正态(0,1) 随机数
                                 
(2) R = normrnd([1 2 3;4 5 6],0.1,2,3)  生成期望依次为[1,2,3;4,5,6], 方差为 0.1 的 2× 3 个正态随机数.


四.二项随机数:类似地有
R = binornd(N,P)  R = binornd(N,P,m)   R = binornd(N,p,m,n)
   例如
   n = 10:10:60;   r1 = binornd(n,1./n)  或 r2 = binornd(n,1./n,[1 6]) (都生成参数分别为
   1          1   ), L, ( 60, ) 的6个二项随机数.
(10,
    10          60


五.自由度为 V 的 χ 2 随机数:
R = chi2rnd(V)    R = chi2rnd(V    R = chi2rnd(V
                                     ,m)             ,m,n)


六.期望为 MU 的指数随机数(即 Exp                      随机数):
                                       1
                                       MU
R = exprnd(MU)   R = exprnd(MU,m)  R = exprnd(MU,m,n)


七.自由度为 V1, V2 的 F 分布随机数:
   R = frnd(V1,V2)   R = frnd(V1, V2,m)  R = frnd(V1,V2,m,n)


八. Γ ( A, λ ) 随机数:
   R = gamrnd(A,lambda)  R = gamrnd(A,lambda,m)  R = gamrnd(A,lambda,m,n)


九.超几何分布随机数:
   R = hygernd(N,K,M)   R = hygernd(N,K,M,m)  R = hygernd(N,K,M,m,n)


十.对数正态分布随机数
   R = lognrnd(MU,SIGMA)  R = lognrnd(MU,SIGMA,m)  R = lognrnd(MU,SIGMA,m,n)


十一.负二项随机数:
   R = nbinrnd(r,p)   R = nbinrnd(r,p,m)   R = nbinrnd(r,p,m,n)


十二.Poisson 随机数:
   R = poissrnd(lambda)   R = poissrnd(lambda,m)  R = poissrnd(lambda,m,n)
    例如,以下 3 种表达有相同的含义:lambda = 2;  R = poissrnd(lambda,1,10)
(或 R = poissrnd(lambda,[1 10])  或 R = poissrnd(lambda(ones(1,10)))


十三.Rayleigh 随机数:
   R = raylrnd(B)    R = raylrnd(B,m)   R = raylrnd(B,m,n)


十四.V 个自由度的 t 分布的随机数:
   R = trnd(V)    R = trnd(V,m)   R = trnd(V,m,n)


                                              42
十五.离散的均匀随机数:
R = unidrnd(N)   R = unidrnd(N,m)  R = unidrnd(N,m,n)


十六.[A,B] 上均匀随机数
R = unifrnd(A,B)   R = unifrnd(A,B,m)  R = unifrnd(A,B,m,n)
例如 unifrnd(0,1:6)与 unifrnd(0,1:6,[1 6]) 都依次生成[0,1] 到[0,6]的6个均匀随机数.:


十七.Weibull 随机数
R = weibrnd(A,B)   R = weibrnd(A,B,m)  R = weibrnd(A,B,m,n)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135285.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月5日 下午2:00
下一篇 2022年6月5日 下午2:00


相关推荐

  • calendar类的日期加减

    calendar类的日期加减calendar 类 日期加减 Java 代码 public nbsp class nbsp test1 nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp public nbsp static nbsp void nbsp main String nbsp args nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp Calendar nbsp c nbsp nbsp Calendar getInstance nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp int nbsp year c get Calendar YEAR nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp

    2026年1月21日
    2
  • mysql多字段主键_sql改变列数据类型

    mysql多字段主键_sql改变列数据类型MySQL数据类型(1)数值类型1、整数型2、浮点型3、定点型(2)日期时间类型(3)字符串类型MySQL字段属性1、空\不为空值:NULL、NOTNULL2、主键:primarykey3、唯一键:uniquekey4、自增长:auto_increment5、默认值:default6、字段描述:comment数值类型整数类型:tinyint、smallint、mediumint、intege…

    2025年12月2日
    7
  • querySelectorAll与querySelector的区别

    querySelectorAll与querySelector的区别querySelecto 与 querySelecto 的区别 querySelecto 找出所有匹配的节点并返回数组 querySelecto 找到一个后就返回节点对象 1 querySelecto 只返回匹配的第一个元素 如果没有匹配项 返回 null 2 querySelecto 返回匹配的元素集合 如果没有匹配项 返回空的 nodelis

    2026年3月20日
    2
  • java栈和堆的区别_Java中堆和栈的区别

    java栈和堆的区别_Java中堆和栈的区别堆和栈都是 Java 用来在 RAM 中存放数据的地方 堆 1 Java 的堆是一个运行时数据区 类的对象从堆中分配空间 这些对象通过 new 等指令建立 通过垃圾回收器来销毁 2 堆的优势是可以动态地分配内存空间 需要多少内存空间不必事先告诉编译器 因为它是在运行时动态分配的 但缺点是 由于需要在运行时动态分配内存 所以存取速度较慢 栈 1 栈中主要存放一些基本数据类型的变量 byte short int

    2026年3月16日
    2
  • Flex实现元素的水平居中和垂直居中

    Flex实现元素的水平居中和垂直居中flex 容器内子元素的 float clear 和 vertical align 属性将失效 所有子元素自动成为容器成员 flexitem 即 项目 水平居中 justify content 属性定义了项目在主轴 水平 上的对齐方式 justify content 可取值 flex start 默认值 左对齐 flex end 右对齐 center 居中 space between 两端对齐 项目之间的间隔都相

    2026年2月23日
    2
  • linux ln 软连接_ln命令建立软链接

    linux ln 软连接_ln命令建立软链接举例:1.对某个文件创建一个连接[root@www.linuxidc.com~]#ln-s/home/kk/ss.sh~#如果不写目标地址,即在当前目录建接立链接[root@www.linuxidc.com~]#lsCentOS-Base.repo.oldboyanaconda-ks.cfginstall.loginstall.log.syslogss.sh…

    2022年9月30日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号