MATLAB产生各种分布的随机数.docx

上传人:b****4 文档编号:12056409 上传时间:2023-04-16 格式:DOCX 页数:10 大小:72.67KB
下载 相关 举报
MATLAB产生各种分布的随机数.docx_第1页
第1页 / 共10页
MATLAB产生各种分布的随机数.docx_第2页
第2页 / 共10页
MATLAB产生各种分布的随机数.docx_第3页
第3页 / 共10页
MATLAB产生各种分布的随机数.docx_第4页
第4页 / 共10页
MATLAB产生各种分布的随机数.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

MATLAB产生各种分布的随机数.docx

《MATLAB产生各种分布的随机数.docx》由会员分享,可在线阅读,更多相关《MATLAB产生各种分布的随机数.docx(10页珍藏版)》请在冰豆网上搜索。

MATLAB产生各种分布的随机数.docx

MATLAB产生各种分布的随机数

MATLAB产生各种分布的随机数

MATLAB产生各种分布的随机数

 1,  均匀分布U(a,b):

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

unifrnd(a,b,m,n)

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

unifrnd(a,b)

2,0-1分布U(0,1)

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

rand(m,n)

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

rand

4,二类分布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。

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

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

6,产生mmnn阶期望值为的指数分布的随机数矩阵:

exprnd (,mm,nn)

 

 

此外,常用逆累积分布函数表 

函数名           调用格式                  函数注释 

norminv      X=norminv(P,mu,sigma)      正态逆累积分布函数 

expinv       X=expinv(P,mu)             指数逆累积分布函数 

weibinv      X=weibinv(P,A,B)           威布尔逆累积分布函数 

logninv      X=logninv(P,mu,sigma)       对数正态逆累积分布函数 

Chi2inv      X=chi2inv(P,A,B)           卡方逆累积分布函数 

Betainv      X=betainv(P,A,B)            β分布逆累积分布函数

 

4.1随机数的产生

4.1.1二项分布的随机数据的产生

命令参数为N,P的二项随机数据

函数binornd

格式R=binornd(N,P)%N、P为二项分布的两个参数,返回服从参数为N、P的二项分布的随机数,N、P大小相同。

R=binornd(N,P,m)%m指定随机数的个数,与R同维数。

R=binornd(N,P,m,n)%m,n分别表示R的行数和列数

例4-1

>>R=binornd(10,0.5)

R=

3

>>R=binornd(10,0.5,1,6)

R=

813764

>>R=binornd(10,0.5,[1,10])

R=

6846753562

>>R=binornd(10,0.5,[2,3])

R=

758

656

>>n=10:

10:

60;

>>r1=binornd(n,1./n)

r1=

210112

>>r2=binornd(n,1./n,[16])

r2=

012131

4.1.2正态分布的随机数据的产生

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

函数normrnd

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

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

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

例4-2

>>n1=normrnd(1:

6,1./(1:

6))

n1=

2.16502.31343.02504.08794.86076.2827

>>n2=normrnd(0,1,[15])

n2=

0.05911.79710.26410.8717-1.4462

>>n3=normrnd([123;456],0.1,2,3)%mu为均值矩阵

n3=

0.92991.93612.9640

4.12465.05775.9864

>>R=normrnd(10,0.5,[2,3])%mu为10,sigma为0.5的2行3列个正态随机数

R=

9.783710.06279.4268

9.1672   10.1438   10.5955 

4.1.3  常见分布的随机数产生 

常见分布的随机数的使用格式与上面相同 

表4-1  随机数产生函数表 

函数名 调用形式 

注      释 

Unifrnd unifrnd ( A,B,m,n) [A,B]上均匀分布(连续) 随机数 Unidrnd unidrnd(N,m,n) 

均匀分布(离散)随机数 

Exprnd exprnd(Lambda,m,n) 

参数为Lambda的指数分布随机数 

Normrnd normrnd(MU,SIGMA,m,n) 参数为MU,SIGMA的正态分布随机数 chi2rnd chi2rnd(N,m,n) 自由度为N的卡方分布随机数 Trnd trnd(N,m,n) 自由度为N的t分布随机数 

Frnd frnd(N1, N2,m,n) 第一自由度为N1,第二自由度为N2的F分布随机数 gamrnd gamrnd(A, B,m,n) 参数为A, B的分布随机数 betarnd betarnd(A, B,m,n) 

参数为A, B的分布随机数 

lognrnd lognrnd(MU, SIGMA,m,n) 参数为MU, SIGMA的对数正态分布随机数 nbinrnd nbinrnd(R, P,m,n) 

参数为R,P的负二项式分布随机数 

ncfrnd ncfrnd(N1, N2, delta,m,n) 参数为N1,N2,delta的非中心F分布随机数 nctrnd nctrnd(N, delta,m,n) 参数为N,delta的非中心t分布随机数 ncx2rnd ncx2rnd(N, delta,m,n) 参数为N,delta的非中心卡方分布随机数 raylrnd raylrnd(B,m,n) 参数为B的瑞利分布随机数 weibrnd weibrnd(A, B,m,n) 参数为A, B的韦伯分布随机数 binornd binornd(N,P,m,n) 参数为N, p的二项分布随机数 geornd geornd(P,m,n) 

参数为 p的几何分布随机数 

hygernd hygernd(M,K,N,m,n) 参数为 M,K,N的超几何分布随机数 Poissrnd 

poissrnd(Lambda,m,n) 

参数为Lambda的泊松分布随机数 

4.1.4  通用函数求各分布的随机数据 

命令  求指定分布的随机数 函数  random 

 

varcpro_psid="u2572954";varcpro_pswidth=966;varcpro_psheight=120

 

 136 

格式  y = random('name',A1,A2,A3,m,n)   %name的取值见表4-2;A1,A2,A3为分

布的参数;m,n指定随机数的行和列 

例4-3  产生12(3行4列)个均值为2,标准差为0.3的正态分布随机数 

>> y=random('norm',2,0.3,3,4) y = 

    2.3567    2.0524    1.8235    2.0342     1.9887    1.9440    2.6550    2.3200     2.0982    2.2177    1.9591    2.0178 

4.2  随机变量的概率密度计算 

4.2.1  通用函数计算概率密度函数值 

命令  通用函数计算概率密度函数值 函数  pdf 

格式  Y=pdf(name,K,A) 

Y=pdf(name,K,A,B) Y=pdf(name,K,A,B,C) 

说明  返回在X=K处、参数为A、B、C的概率密度值,对于不同的分布,参数个数是不同;name为分布函数名,其取值如表4-2。

 

表4-2  常见分布函数表 

name的取值 函数说明 

'beta' 或 'Beta' Beta分布 'bino' 或 'Binomial' 二项分布 'chi2' 或 'Chisquare' 卡方分布 'exp' 或 'Exponential' 指数分布 'f' 或 'F' 

F分布 

'gam' 或 'Gamma' GAMMA分布 'geo' 或 'Geometric' 

几何分布 'hyge' 或 'Hypergeometric' 超几何分布 'logn' 或 'Lognormal' 

对数正态分布 'nbin' 或 'Negative Binomial' 负二项式分布 'ncf' 或 'Noncentral F' 非中心F分布 'nct' 或 'Noncentral t' 

非中心t分布 'ncx2' 或 'Noncentral Chi-square' 非中心卡方分布 'norm' 或 'Normal' 正态分布 'poiss' 或 'Poisson' 泊松分布 'rayl' 或 'Rayleigh' 瑞利分布 't' 或 'T' 

T分布 'unif' 或 'Uniform' 

均匀分布 'unid' 或 'Discrete Uniform' 离散均匀分布 'weib' 

或 

'Weibull' 

Weibull分布 

例如二项分布:

设一次试验,事件A发生的概率为p,那么,在n次独立重复试验中,事件A恰好发生K次的概率P_K为:

P_K=P{X=K}=pdf('bino',K,n,p) 

例4-4  计算正态分布N(0,1)的随机变量X在点0.6578的密度函数值。

Matlab的随机函数(高斯分布均匀分布其它分布)

Matlab中随机数生成器主要有:

betarnd贝塔分布的随机数生成器

binornd二项分布的随机数生成器

chi2rnd卡方分布的随机数生成器

exprnd指数分布的随机数生成器

frndf分布的随机数生成器

gamrnd伽玛分布的随机数生成器

geornd几何分布的随机数生成器

hygernd超几何分布的随机数生成器

lognrnd对数正态分布的随机数生成器

nbinrnd负二项分布的随机数生成器

ncfrnd非中心f分布的随机数生成器

nctrnd非中心t分布的随机数生成器

ncx2rnd非中心卡方分布的随机数生成器

normrnd正态(高斯)分布的随机数生成器,normrnd(a,b,c,d):

产生均值为a、方差为b大小为cXd的随机矩阵

poissrnd泊松分布的随机数生成器

rand:

产生均值为0.5、幅度在0~1之间的伪随机数,rand(n):

生成0到1之间的n阶随机数方阵,rand(m,n):

生成0到1之间的m×n的随机数矩阵

randn:

产生均值为0、方差为1的高斯白噪声,使用方式同rand

注:

rand是0-1的均匀分布,randn是均值为0方差为1的正态分布

randperm(n):

产生1到n的均匀分布随机序列

raylrnd瑞利分布的随机数生成器

trnd学生氏t分布的随机数生成器

unidrnd离散均匀分布的随机数生成器

unifrnd连续均匀分布的随机数生成器

weibrnd威布尔分布的随机数生成器

以下介绍利用Matlab产生均值为0,方差为1的符合正态分布的高斯随机数。

我们利用的函数为normrnd(a,b,c,d):

产生均值为a、标准为b大小为cXd的随机矩阵,它有如下三种参数形式:

R=normrnd(μ,σ)

R=normrnd(μ,σ):

生成服从正态分布(μ参数代表均值,σ参数代表标准差)的随机数。

输入的向量或矩阵μ和σ必须形式相同,输出R也和它们形式相同。

标量输入将被扩展成和其它输入具有相同维数的矩阵。

R=normrnd(μ,σ,m)

R=norrmrnd(μ,σ,m):

生成服从正态分布(μ参数代表均值,σ参数代表标准差)的随机数矩阵,矩阵的形式由m定义。

m是一个1×2向量,其中的两个元素分别代表返回值R中行与列的维数。

R=normrnd(μ,σ,m,n)

R=normrnd(μ,σ,m,n):

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

其中μ为均值,σ为标准方差,m、n为矩阵大小;

--------------------------------------------------------------

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1