normrnd(normrnd函数的用法)

http://www.itjxue.com  2023-01-27 12:02  来源:未知  点击次数: 

Matlab中的normrnd语句产生的是伪随机数吗?

功能:生成服从正态分布的随机数

语法:

R=normrnd(MU,SIGMA)

R=normrnd(MU,SIGMA,m)

R=normrnd(MU,SIGMA,m,n)

明:

R=normrnd(MU,SIGMA):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的随机数。输入的向量或矩阵MU和SIGMA必须形式相同,输出R也和它们形式相同。标量输入将被扩展成和其它输入具有

相同维数的矩阵。

R=norrmrnd(MU,SIGMA,m):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的

随机数矩阵,矩阵的形式由m定义。m是一个1×2向量,其中的两个元素分别代表返回值R中行与列的维数。

R=normrnd(MU,SIGMA,m,n):

生成m×n形式的正态分布的随机数矩阵。

help

normrnd

NORMRND

Random

arrays

from

the

normal

distribution.

R

=

NORMRND(MU,SIGMA)

returns

an

array

of

random

numbers

chosen

from

a

normal

distribution

with

mean

MU

and

standard

deviation

SIGMA.

The

size

of

R

is

the

common

size

of

MU

and

SIGMA

if

both

are

arrays.

If

either

parameter

is

a

scalar,

the

size

of

R

is

the

size

of

the

other

parameter.

R

=

NORMRND(MU,SIGMA,M,N,...)

or

R

=

NORMRND(MU,SIGMA,[M,N,...])

returns

an

M-by-N-by-...

array.

例:生成正态分布随机数。

a=normrnd(0,1)

a

=

-1.4814

a=normrnd(0,1,1,6)

a

=

1.1287

-0.2900

1.2616

0.4754

1.1741

0.1269

a=normrnd(0,1,[1

6])

a

=

0.1555

0.8186

-0.2926

-0.5408

-0.3086

-1.0966

a=normrnd(10,2,2,3)

a

=

13.6280

13.6090

11.0531

10.6240

8.5538

9.4795

m=50;

n=2;

x=0:1:100;

y=exp(-(x-m).^2/(2*n^2));

subplot(2,1,1)

plot(x,y)

subplot(2,1,2)

%

z=normrnd(50,2,100,1);

%

plot(z)

z=0:1:100;

d=normpdf(z,50,2);

plot(z,d)

,等价表达

生成高斯分布的函数mvnrnd与normrnd有什么区别

命令 参数为μ,σ的正态分布的随机数据

函数 normrnd

格式 :

R = normrnd(MU,SIGMA) %返回均值为MU,标准差为SIGMA的正态分布的随机数据,R可以是向量或矩阵.

R = normrnd(MU,SIGMA,m) %m指定随机数的个数,与R同维数.

R = normrnd(MU,SIGMA,m,n) %m,n分别表示R的行数和列数

MATLAB中 normrnd产生的随机数,怎么不让它产生小于0的。

这个函数生成均值为1.2,方差为5.76的随机数,矩阵大小为100行200列。所谓随机数,要服从那个分布当然就会有小于0的情况发生了。

要不小于0,不然就用

A=abs(normrnd(1.2,5.76,100,200)); 但是这样就改变了数据的统计特性了,均值和方差就变了~~

求助Matlab的randn和normrnd的区别

当然是有区别的。

正态分布只需要2个参数。

randn() 是标准正态分布

normrnd是自己可以指定均数和标准差的正太分布。

(责任编辑:IT教学网)

更多

推荐Flash教程文章