当前位置:   article > 正文

MATLAB 以指定概率生成一定范围内的随机数_matlab产生指定概率的随机数

matlab产生指定概率的随机数

需求:以{Pi|i=1,…n}, Sigma{Pi|i=1,…n} = 1的概率生成随机数x,x属于集合{vi|i=1,…n}.
代码:

x = randsrc(1,1,[vi;pi]);
  • 1

如果要生成的随机数是一个m*n的矩阵,则:

x = randsrc(m,n,[vi;pi]);
  • 1

使用的随机函数为randsrc(m,n,[alphabet; prob]).

tips:
注意表达式中的符号,第一次我把’;‘搞成’,'了,出现了莫名其妙的错误,有时候可以成功生成随机数,有时候就不对,给我查了老半天。

附:
随机数在MATLAB中还是很重要的一系列函数,几个重要函数分别解释如下:

1.rand - [0,1]均匀随机分布

Au=rand(1, 5) %0-1均匀分布的1x5随机矩阵

2.randi - 整数均匀随机分布

Ai=randi([-3, 4], 2, 8) %-3到4均匀分布的2x8随机矩阵

3.randn - 标准正态分布

An = randn(3, 4) %标准正态分布的3x4矩阵

4.randsrc - 生成指定范围的随机数

out = randsrc(5, 5, [-3 -1 1 3; .25 .25 .25 .25])
% 在-3 1 1 3四个数中随机选生成5x5的矩阵,后面的0.25是每个数对应的概率

大家在用的时候还可以通过’help randsrc’指令调取相关的帮助文档查阅。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号