正态分布

rand函数

MATLAB中给出了[0, 1]区间均匀分布伪随机数的产生函数 rand。对于没有伪随机产生函数的计算机语言,可用以上算法来产生均匀分布的伪随机数。对于在区间[0, M]上均匀分布的随机数 x,其期望和方差为

\mu _{_x}=E[x]=\frac{M}{2}

\sigma _{x}^{2}=E[(x-\mu_{x})^2]=\frac{M^2}{12}

例如,在区间[o,1]上均匀分布的随机数的期望是 0.5,方差为 1/12

x=rand(6)  %创建6x6的随机数矩阵,其元素服从 P[O,1]上均匀分布

normrnd函数

在MATLAB中,提供了 normrnd 函数用于生成正态分布的随机数。函数的调用格式如下

R = normrnd(mu, sigma):生成服从均值参数为 mu 和标准差参数 sigma 的正态分布的随机数。mu和 sigma可能是有相同大小的向量、矩阵或多维数组,也和R有相同的大小。如果 mu或sigma是标量,则被扩展为和另一个输人有相同维数的数组。

n1 = normrnd(1:6, 1./(1:6))

R = normrnd(mu, sigma, v):生成服从均值参数为mu和标准差参数sigma的正态分布的v个随机数组,其中v是行向量。如果v是1X2的向量,则R是有v(1)行和v(2)列的矩阵。如果v是1Xn的向量,则R是一个n维数组。

n2 = normrnd(0, 1, [1 5])

R = normrnd(mu, sigma, m, n):生成服从均值参数为mu和标准差参数sigma的正态分布的mXn的随机数矩阵。

n3 = normrnd([1 2 3;4 5 6], 0.1, 2, 3)

normcdf函数

该函数用于求取正态分布的值

P = normcdf(X, MU, SIGMA):求解数学期望为MU,标准差为SIGMA的正态分布随机变量的累积概率分布函数,X表示X处的概率分布函数值,若输人时MU,SIGMA为空,则默认为标准正态分布,MU为0,SIGMA为1。

标准正态分布

正态分布也称高斯分布,可采用函数变换法产生标准正态分布随机数。设r_{1}r_{2}是两个独立的在区间[0, 1]上均匀分布的随机数,则

r_{1}=\sqrt{-2lnr_{1}}cos2\pi r_{2}

r_{2}=\sqrt{-2lnr_{1}}sin2\pi r_{2}

是两个独立同分布的标准高斯随机数,即其均值为零,方差为1,记为 x_{1}~N(0, 1)x_{2}~N(0, 1)。MATLAB 中用函数 randn 产生标准正态分布随机数。

\Gamma分布

\Gamma分布的概率密度函数是参数\alpha\lambda的函数,MATLAB工具箱中提供了 gampdf,gamcdf和gaminv 函数,可以分别求取\Gamma分布的概率密度函数、分布函数及逆概率分布的值。

Y= gampdf(x,a,b)
Y= gamcdf(x,a,b)
Y= gaminv(F,a,\lambda)

其中,x为选定的一组横坐标向量,Y为x各点处的概率密度函数的值。

\chi ^{2}分布、卡方分布

中心\chi^2分布

MATLAB 中给出了\sigma ^2=1的自由度为n的中心\chi^2分布的计算函数:\chi^2分布的分布函数chi2cdf,分布函数的反函数 chi2inv,概率密度函数 chi2pdf,随机数发生函数 chi2rnd等。

Y=chi2pdf(x, k)
F=chi2cdf(x, k)
x=chi2inv(F, k)

其中x为选定的一组横坐标向量,y 为x各点处的概率密度函数的值。

非中心\chi^2分布

MATLAB统计工具箱中给出了指令 ncx2pdf,ncx2cdf,ncx2inv,ncx2rnd,以及ncx2stat来计算\sigma ^2=1的非中心\chi^2分布问题。

\tau分布

MATLAB中提供了 tpdf、tcdf和 tinv函数,可以分别求取\tau分布的概率密度函数,\tau分布函数和\tau逆分布函数的值。

Rayleigh分布

该函数是b的函数,MATLAB 中提供了 raylpdf raylcdf 和 raylinv,可以分别求取Rayleigh 分布的概率密度函数、分布函数与逆分布函数的值。函数的调用格式如下

y =raylpdf(x,b)
F= raylcdf(x,b)
x=raylinv(F,b)

其中,x为选定的一组横坐标向量,y为各点处的概率密度函数的值。

F分布

F 分布常用于两个独立 \chi^2分布随机变量相除运算的问题,显然,一个自由度为(m,n)的 F分布随机变量的倒数也服从 F分布,但其自由度变为(n,m)。
在MATLAB中,fpdf、fcdf、finv函数分别求取F分布的概率密度函数,分布函数与逆分布函数的值。函数的调用格式如下

y=fpdf(x,a,b)
y= fcdf(x,p,q)

x=finv(F,p,q)

其中,x为选定的一组横坐标向量,y 为 x 各点处的概率密度函数的值。

泊松分布

poisspdf、poisscdf、poissfit、poissinv、poissrnd、poisstats等

指数分布

指数分布随机变量的期望为\frac{1}{\lambda},方差为\frac{1}{\lambda^2}。在 MATLAB 统计工具箱中提供了exprnd 函数用于创建指数分布。其调用格式如下

R = exprnd(mu)
R = exprnd(mu,m,n,...)
R= exprnd(mu,[2m,n,... ])

其中,参数 mu为给定的参数,m,n 为返回的指数随机变量的维数

均匀分布

unifrnd

二项分布

binopdf、binocdf、binofit、binoinv、binornd、binostat等

参考书籍:《MATLAB R2015b概率与数理统计》

《MATLAB R2020a入门、精通与实战》

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐