【随机变量的产生】
matlab 中产生随机数的函数有很多,除了 特殊矩阵 中提到的用于生成测试矩阵的函数外,还有一些可生成常见分布的随机数产生函数
对于常用的二项分布的随机数据的产生,有:
binornd(N,P)
:产生服从 N、P 的二项分布随机数binornd(N,P,m,n)
:产生服从 N、P 的二项分布随机数 R,m、n 用于指定 R 的行数和列数binornd(N,P,[m,n])
:产生服从 N、P 的二项分布随机数 R,m、n 用于指定 R 的行数和列数
1 | >> n=10:10:50; |
除二项分布外,常见随机数产生函数表如下,他们的用法均于上述的二项分布的随机数据的产生相同:
函数 | 说明 |
---|---|
binornd | 产生服从 N、P 的二项分布随机数 |
normrnd | 产生服从 mu、sigma 的正态分布随机数 |
unifrnd | 产生 [a,b] 上均匀分布且连续的随机数 |
unidrnd | 产生均匀分布且离散的随机数 |
exprnd | 产生服从 Lambda 的指数分布随机数 |
poissrnd | 产生服从 Lambda 的泊松分布随机数 |
chi2rnd | 产生自由度为 n 的卡方分布随机数 |
trnd | 产生自由度为 n 的 t 分布随机数 |
frnd | 产生第一自由度为 N1,第二自由度为 N2 的 F 分布随机数 |
gamrnd | 产生参数为 a、b 的伽马分布随机数 |
betarnd | 产生参数为 a、b 的贝塔分布随机数 |
lognrnd | 产生参数为 mu、sigma 的对数正态分布随机数 |
nbinrnd | 产生参数为 r、p 的负二项式分布随机数 |
ncfrnd | 产生参数为 n1、n2、delta 的非中心 F 分布随机数 |
nctrnd | 产生参数为 n、delta 的非中心 t 分布随机数 |
ncx2rnd | 产生参数为 n、delta 的非中心 t 卡方分布随机数 |
raylrnd | 产生参数为 b 的瑞利分布随机数 |
weibrnd | 产生参数为 a、b 的韦伯分布随机数 |
geornd | 产生参数为 p 的几何分布随机数 |
hygernd | 产生参数为 M、K、N 的超几何分布随机数 |
【概率密度】
通用函数概率密度
pdf(name,X,A)
:返回 x=X 处,参数为 A 的概率密度值pdf(name,X,A,B)
:返回 x=X 处,参数为 A、B 的概率密度值pdf(name,X,A,B,C)
:返回 x=X 处,参数为 A、B、C 的概率密度值
注:
- 关于参数 A、B、C:根据不同的分布,参数个数不同
- 关于 name:用于指定是何种分布,常见取值见下表
取值 | 说明 | 取值 | 说明 |
---|---|---|---|
beta | beta分布 | bino | 二项分布 |
chi2 | 卡方分布 | exp | 指数分布 |
f | F分布 | gam | 伽马分布 |
geo | 几何分布 | hyge | 超几何分布 |
logn | 对数分布 | norm | 正态分布 |
poiss | 泊松分布 | rayl | 瑞利分布 |
t | t分布 | unif | 均匀分布 |
unid | 离散均匀分布 |
1 | >> pdf('normal',-5:5,0,1) |
此外,通用函数计算概率密度可以推广到任意函数、数据的情况
[f,Xi]=ksdensity(x)
:对于待统计的向量 x,计算概率密度的点 Xi 与概率密度 ff=ksdensity(x,Xi)
:对于待统计的向量 x 和概率密度的点 Xi,计算概率密度 f
1 | >> x=randn(10000,1); |
专用函数概率密度
专用函数概率密度,是 matlab 中封装好的用于计算特定分布的概率密度的函数
以计算二项分布的概率密度函数为例,其余的函数调用方法与之类似:
binopdf(X,n,p)
:计算实验次数为 n,每次实验中事件发生概率为 p 在 x=X 处的概率密度值
专用函数概率密度函数表如下:
调用格式 | 说明 |
---|---|
unifpdf(x,a,b) | 计算[a,b]上连续概率密度在X=x处的概率密度函数值 |
unidpdf(x,n) | 计算离散概率密度函数值 |
exppdf(x,lambda) | 计算参数为 lambda 的指数分布概率密度函数值 |
normpdf(x,mu,sigma) | 计算参数为 mu、simga 的正态分布概率密度函数值 |
chi2pdf(x,n) | 计算自由度为 n 的卡方分布概率密度函数值 |
tpdf(x,n) | 计算自由度为 n 的 t 分布概率密度函数值 |
fpdf(x,n1,n2) | 计算第一自由度为 n1,第二自由度为 n2 的 F 分布概率密度函数值 |
gampdf(x,a,b) | 计算参数为 a、b 的伽马分布概率密度函数值 |
betapdf(x,a,b) | 计算参数为 a、b 的贝塔分布概率密度函数值 |
lognpdf(x,mu,sigma) | 计算参数为 mu、sigma 的对数正态分布概率密度函数值 |
ralypdf(x,b) | 计算参数为 b 的瑞利分布概率密度函数值 |
geopdf(x,p) | 计算参数为 p 的几何分布概率密度函数值 |
hygepdf(x,m,k,n) | 计算参数为 p 的超几何分布概率密度函数值 |
poisspdf(x,lambda) | 计算参数为 lambda 的泊松分布概率密度函数值 |
实例:正态分布函数概率密度的计算
1 | >> mu=[0:0.1:5]; |
【累计概率分布】
通用函数累计概率
使用 cdf()
可以计算随机变量 $x\leq X$ 的概率之和
cdf(name,X,A)
:返回 x=X 处,参数为 A 的累计概率cdf(name,X,A,B)
:返回 x=X 处,参数为 A、B 的累计概率cdf(name,X,A,B,C)
:返回 x=X 处,参数为 A、B、C 的累计概率
注:
- 关于参数 A、B、C:根据不同的分布,参数个数不同
- 关于 name:用于指定是何种分布,常见取值见上表
专用函数累计概率
专用函数累计概率的写法,与上表写法基本相同,不同的是将 pdf
换为了 cdf
例如:poisscdf(x,lambda)
由于用法相同,只是返回结果不同,故不再赘述
【统计特征】
mean(A)
:求 A 的平均值median(A)
:求 A 的中位数nanmedian(A)
:忽略 NaN 求 A 的中位数geomean(A)
:求 A 的几何平均值harmmean(A)
:求 A 的调和平均值var(A)
:求 A 的方差std(A)
:求 A 的标准差skewness(A)
:求 A 的三阶统计量斜度cov(A,B)
:求 A 和 B 的协方差corrcoef(A,B)
:求 A 和 B 的皮尔逊相关系数
【统计作图】
正整数频率表
tabulate(A)
:求 A 的正整数频率表
1 | >> a=ceil(randn(1,5)); |
累积分布函数图形
cdfplot(a)
:画出向量 a 的累积分布图形
1 | >> x=0:0.05:5; |
最小二乘拟合曲线
h=lsline
:画出最小二乘拟合曲线
1 | >> x=1:10; |
正态分布概率图形
h=normplot(X)
:绘制 X 的正态分布概率图形,若 X 为向量,则直接显示;若 X 为矩阵,则显示每一列的图形
1 | >> x=1:10; |
箱线图
boxplot(X)
:绘制 X 的箱线图boxplot(X,Y)
:绘制变量为 X,附加群为 Y 的箱线图
1 | >> x=1:10; |
参考线
refline(k,b)
:绘制斜率为 k,截距为 b 的参考直线refcurve(p)
:绘制参数为多项式系数的参考曲线
1 | >> subplot(2,1,1) |
样本概率图形
p=capaplot(X,[a,b])
:绘制参数为 X,范围为 [a,b] 的样本概率图形,并返回在范围内的概率
1 | >> X=normrnd(1,0.05,300,1); |
正态拟合曲线图
histfit(X)
:画出 X 的正态拟合曲线图histfit(X,num)
:画出 X 的正态拟合曲线图,num 指定柱状图个数
1 | >> X=normrnd(1,0.05,300,1); |