怎么用matlab产生平均分布的随机数

2020-11-23 22:53:51 字数 5422 阅读 1239

1楼:昱婷漫步

rand函数生成的就是0~1之间之间符合平均分布的随机数,如:

a=rand(1,1000);

hist(a)

------------------生成的直方图为:

matlab 怎么产生01分布随机数

2楼:紫色学习

在matlab 中产生0-1上均匀分布的随机数方法如下:

方法1、对于问题,如果 y 是m*n的服从0~1均匀分布的随机矩阵:

y = rand(m,n);

方法2、用统计工具箱,y = unifrnd(0,1,m,n).

另外,提供常用的函数分布供参考:

1、 均匀分布u(a,b)

产生m*n阶[a,b]均匀分布u(a,b)的随机数矩阵:unifrnd (a,b,m, n)

2、0-1分布u(0,1)

产生m*n阶[0,1]均匀分布的随机数矩阵:rand (m, n)

3、二类分布binornd(n,p,mm,nn),即产生mm*nn均值为n*p的矩阵

4、产生m*n阶离散均匀分布的随机数矩阵:

unidrnd(n,mm,nn) 产生一个数值在1-n区间的mm*nn矩阵;

5、产生mm nn阶期望值为 的指数分布的随机数矩阵:exprnd ( ,mm, nn).

3楼:占有≠拥有

sign(fix(rand/0.3))

rand取0-1区间的随机数

fix(rand/0.3) 则取到0-0.3区间时=0,取到0.3-1区间时≥1,概率比为3:7

sign(fix(rand/0.3))将非零数取1;即rand取在0.3-1区间时总式=1

取在0-0.3区间时总式=0

楼上的变成7:3了

4楼:

1-fix(rand/0.7)

一般的fix(rand+p)

p为取1的概率

用内置函数不就可以了

5楼:手机用户

**用这么费事。最好理解、也很通用的是

floor(rand+0.7)

也就是吧0.7~1.7之间的均匀分布向下取整到0或者1,0.7就是1的概率

matlab 中如何产生0-1上均匀分布的随机数

6楼:匿名用户

在matlab 中产生0-1上均匀

分布的随机数方法如下:

方法1、对于问题,如果 y 是m*n的服从0~1均匀分布的随机矩阵:

y = rand(m,n);

方法2、用统计工具箱,y = unifrnd(0,1,m,n).

另外,提供常用的函数分布供参考:

1、 均匀分布u(a,b)

产生m*n阶[a,b]均匀分布u(a,b)的随机数矩阵:unifrnd (a,b,m, n)

2、0-1分布u(0,1)

产生m*n阶[0,1]均匀分布的随机数矩阵:rand (m, n)

3、二类分布binornd(n,p,mm,nn),即产生mm*nn均值为n*p的矩阵

4、产生m*n阶离散均匀分布的随机数矩阵:

unidrnd(n,mm,nn) 产生一个数值在1-n区间的mm*nn矩阵;

5、产生mm nn阶期望值为 的指数分布的随机数矩阵:exprnd ( ,mm, nn).

7楼:匿名用户

对于你的问题,如果 y 是m*n的服从0~1均匀分布的随机矩阵:

y = rand(m,n)

用统计工具箱,

y = unifrnd(0,1,m,n)

8楼:匿名用户

如果 y 是m*n的服从0~1均匀分布的随机矩阵:

y = rand(m,n)

用统计工具箱,

y = unifrnd(0,1,m,n)

9楼:匿名用户

rand函数

a=rand(m,n)

该函数产生一个大小m*n的数组,数组的元素为在区间(0,1)内均匀分布的数

10楼:匿名用户

x=random('unif',0,1)

11楼:dandy的同桌

rand生成的是标准正态分布

怎样用matlab产生服从均匀分布的一组随机数

12楼:匿名用户

用matlab的rand()和unidrnd()产生服从均匀分布的一组随机数

rand(m,n)产生m行n列的【0,1】均匀分布随机数

unidrnd(n,m,n)产生m行n列的数值小于n的【0,n】均匀分布随机数

用matlab随机生成[-2,2]上均匀分布的随机数100个?

13楼:

这样就可以实现了

randi([-2 2],1,100)

想用matlab生成指定概率分布的随机数,怎么生成

14楼:硪丨暧恋

均匀分布u(a,b):

产生m*n阶[a,b]均匀分布u(a,b)的随机数矩阵:unifrnd (a,b,m, n)

产生一个[a,b]均匀分布的随机数:unifrnd (a,b)

0-1分布u(0,1)

产生m*n阶[0,1]均匀分布的随机数矩阵:rand (m, n)

产生一个[0,1]均匀分布的随机数:rand

二类分布binornd(n,p,mm,nn) 如binornd(10,0.5,mm,nn)

即产生mm*nn均值为n*p的矩阵

binornd(n,p)则产生一个。而binornd(10,0.5,mm)则产生mm*mm的方阵,军阵为n*p。

产生m*n阶离散均匀分布的随机数矩阵:

unidrnd(n,mm,nn) 产生一个数值在1-n区间的mm*nn矩阵

产生mm nn阶期望值为 的指数分布的随机数矩阵:

exprnd ( ,mm, nn)

如何用matlab均匀分布随机序列

15楼:匿名用户

方法2、用统计工具箱,y = unifrnd(0,1,m,n).

另外,提供常用的函数分布供参考:

1、 均匀分布u(a,b)

产生m*n阶[a,b]均匀分布u(a,b)的随机数矩阵:unifrnd (a,b,m, n)

2、0-1分布u(0,1)

产生m*n阶[0,1]均匀分布的随机数矩阵:rand (m, n)

3、二类分布binornd(n,p,mm,nn),即产生mm*nn均值为n*p的矩阵

4、产生m*n阶离散均匀分布的随机数矩阵:

unidrnd(n,mm,nn) 产生一个数值在1-n区间的mm*nn矩阵;

5、产生mm nn阶期望值为 的指数分布的随机数矩阵:exprnd ( ,mm, nn).

matlab中怎么产生离散的均匀随机数?

16楼:匿名用户

unidrnd可以产生离散的均匀随机数,其实在新版的matlab中支持模糊查询,在***mand窗口中输入uni然后按下tab键,所有以uni开头的函数都会列出来!

17楼:shine戚七七

以产生0-1上均匀分布的

随机数为例:

方法1、对于问题,如果 y 是m*n的服从0~1均匀分布的随机矩阵:

y = rand(m,n);

方法2、用统计工具箱,y = unifrnd(0,1,m,n).

另外,提供常用的函数分布供参考:

1、 均匀分布u(a,b)

产生m*n阶[a,b]均匀分布u(a,b)的随机数矩阵:unifrnd (a,b,m, n)

2、0-1分布u(0,1)

产生m*n阶[0,1]均匀分布的随机数矩阵:rand (m, n)

3、二类分布binornd(n,p,mm,nn),即产生mm*nn均值为n*p的矩阵

4、产生m*n阶离散均匀分布的随机数矩阵:

unidrnd(n,mm,nn) 产生一个数值在1-n区间的mm*nn矩阵;

5、产生mm nn阶期望值为 的指数分布的随机数矩阵:exprnd ( ,mm, nn).

18楼:上善之水

rand(x)是生成1以内的随机数

你可以让它*你需要数的范围

matlab中均匀分布怎么产生?

19楼:滟丽

1、如果我们想生成一个3*3的均匀分布的矩阵,只需要如下命令:rand(3,3) 或者 rand(3)。

2、如果需要获得(a,b)的随机数,我们可以利用(0,1)的均匀随机数来生成(a,b)的均匀随机数。a + (b-a).*rand(m,n)。

这里(a,b) 是你生成随机数的端点,m,n代表矩阵的行和列。

3、生成均匀分布(2,4) 的3*3矩阵,对于这个问题,我们只需要简单的代下公式即可2 + 2.*rand(3,3) 。

4、我们可以分析生成数据的分布图来验证我们生成的均匀的随机变量是否是均匀的。

5、另外一个我们可以简单验证其均值,通过mean函数。

20楼:匿名用户

1、均匀分布:unifrnd (a, b, m, n); 产生m*n阶[a, b]均匀分布,unifrnd (a,b) ;产生一个[a,b]的均匀随机数。

2、rand (m, n);产生m*n阶[0,1]均匀分布的随机数矩阵,rand(n);产生n*n阶[0,1]均匀分布的随机数。

3、binornd(n,p,[m,n,p,...]) 产生的是服从二项分布的随机数。

4、unidrnd(n,m,n) ;产生m*n阶离散均匀分布的随机数矩阵;产生一个数值在1-n之间的mm*nn矩阵。

5、exprnd(mu ,m, n)产生m*n阶期望值为mu的指数分布的随机数矩阵。

21楼:天云一号

matlab中产生均匀分布的函数

为rand函数。

具体实现方法可以参考如下程序段:

a = rand(5, 3); % 产生5*3的矩阵,矩阵的元素服从均匀分布,均值为0,矩阵元素在(0,1)之间

a = rand(5, 3) + 0.5; % 产生5*3的矩阵,矩阵的元素服从均匀分布,均值为0.5,矩阵元素在(0,1)之间

22楼:匿名用户

使用rand(m,n)产生m行n列的均匀矩阵

randn则为正态分布矩阵

23楼:匿名用户

unifrnd 产生均匀分布 具体的看下help吧