Matlab概率论与数理统计.docx
《Matlab概率论与数理统计.docx》由会员分享,可在线阅读,更多相关《Matlab概率论与数理统计.docx(23页珍藏版)》请在冰豆网上搜索。
Matlab概率论与数理统计
Matlab概率论与数理统计
一、matlab基本操作
1.画图
【例01.01】简单画图
holdoff;
x=0:
0.1:
2*pi;
y=sin(x);
plot(x,y,'-r');
x1=0:
0.1:
pi/2;
y1=sin(x1);
holdon;
fill([x1,pi/2],[y1,1/2],'b');
【例01.02】填充,二维均匀随机数
holdoff;
x=[0,60];y0=[0,0];y60=[60,60];
x1=[0,30];y1=x1+30;
x2=[30,60];y2=x2-30;
xv=[00306060300];yv=[03060603000];
fill(xv,yv,'b');
holdon;
plot(x,y0,'r',y0,x,'r',x,y60,'r',y60,x,'r');
plot(x1,y1,'r',x2,y2,'r');
yr=unifrnd(0,60,2,100);
plot(yr(1,:
),yr(2,:
),'m.')
axis('on');
axis('square');
axis([-2080-2080]);
2.排列组合
C=nchoosek(n,k):
,例nchoosek(5,2)=10,nchoosek(6,3)=20.
prod(n1:
n2):
从n1到n2的连乘
【例01.03】至少有两个人生日相同的概率
公式计算
rs=[20,25,30,35,40,45,50];%每班的人数
p1=ones(1,length(rs));
p2=ones(1,length(rs));
%用连乘公式计算
fori=1:
length(rs)
p1(i)=prod(365-rs(i)+1:
365)/365^rs(i);
end
%用公式计算(改进)
fori=1:
length(rs)
fork=365-rs(i)+1:
365
p2(i)=p2(i)*(k/365);
end;
end
%用公式计算(取对数)
fori=1:
length(rs)
p1(i)=exp(sum(log(365-rs(i)+1:
365))-rs(i)*log(365));
end
p_r1=1-p1;
p_r2=1-p2;
Rs=[20253035404550]
P_r=[0.41140.56870.70630.81440.89120.94100.9704]
二、随机数的生成
3.均匀分布随机数
rand(m,n);产生m行n列的(0,1)均匀分布的随机数
rand(n);产生n行n列的(0,1)均匀分布的随机数
【练习】生成(a,b)上的均匀分布
4.正态分布随机数
randn(m,n);产生m行n列的标准正态分布的随机数
【练习】生成N(nu,sigma.^2)上的正态分布
5.其它分布随机数
函数名
调用形式
注释
Unidrnd
unidrnd(N,m,n)
均匀分布(离散)随机数
binornd
binornd(N,P,m,n)
参数为N,p的二项分布随机数
Poissrnd
poissrnd(Lambda,m,n)
参数为Lambda的泊松分布随机数
geornd
geornd(P,m,n)
参数为p的几何分布随机数
hygernd
hygernd(M,K,N,m,n)
参数为M,K,N的超几何分布随机数
Normrnd
normrnd(MU,SIGMA,m,n)
参数为MU,SIGMA的正态分布随机数,
SIGMA是标准差
Unifrnd
unifrnd(A,B,m,n)
[A,B]上均匀分布(连续)随机数
Exprnd
exprnd(MU,m,n)
参数为MU的指数分布随机数
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的韦伯分布随机数
三、
一维随机变量的概率分布
1.离散型随机变量的分布率
(1)0-1分布
(2)均匀分布
(3)二项分布:
binopdf(x,n,p),若
,则
,
x=0:
9;n=9;p=0.3;
y=binopdf(x,n,p);
plot(x,y,'b-',x,y,'r*')
y=[0.0404,0.1556,0.2668,0.2668,0.1715,0.0735,0.0210,0.0039,0.0004,0.0000]
‘当n较大时二项分布近似为正态分布
x=0:
100;n=100;p=0.3;
y=binopdf(x,n,p);
plot(x,y,'b-',x,y,'r*')
(4)泊松分布:
piosspdf(x,lambda),若
,则
x=0:
9;lambda=3;
y=poisspdf(x,lambda);
plot(x,y,'b-',x,y,'r*')
y=[0.0498,0.1494,0.2240,0.2240,0.1680,0.1008,0.0504,0.0216,0.0081,0.0027]
(5)几何分布:
geopdf(x,p),则
x=0:
9;p=0.3
y=geopdf(x,p);
plot(x,y,'b-',x,y,'r*')
y=[0.3000,0.2100,0.1470,0.1029,0.0720,0.0504,0.0353,0.0247,0.0173,0.0121]
(6)超几何分布:
hygepdf(x,N,M,n),则
x=0:
10;N=20;M=8;n=4;
y=hygepdf(x,N,M,n);
plot(x,y,'b-',x,y,'r*')
y=[0.1022,0.3633,0.3814,0.1387,0.0144,0,0,0,0,0,0]
2.概率密度函数
(1)均匀分布:
unifpdf(x,a,b),
a=0;b=1;x=a:
0.1:
b;
y=unifpdf(x,a,b);
(2)正态分布:
normpdf(x,mu,sigma),
x=-10:
0.1:
12;mu=1;sigma=4;
y=normpdf(x,mu,sigma);
rn=10000;z=normrnd(mu,sigma,1,rn);%产生10000个正态分布的随机数
d=0.5;a=-10:
d:
12;
b=(hist(z,a)/rn)/d;%以a为横轴,求出10000个正态分布的随机数的频率
plot(x,y,'b-',a,b,'r.')
(3)指数分布:
exppdf(x,mu),
x=0:
0.1:
10;mu=1/2;
y=exppdf(x,mu);
plot(x,y,'b-',x,y,'r*')
(4)
分布:
chi2pdf(x,n),
holdon
x=0:
0.1:
30;
n=4;y=chi2pdf(x,n);plot(x,y,'b');%blue
n=6;y=chi2pdf(x,n);plot(x,y,'r');%red
n=8;y=chi2pdf(x,n);plot(x,y,'c');%cyan
n=10;y=chi2pdf(x,n);plot(x,y,'k');%black
legend('n=4','n=6','n=8','n=10');
(5)t分布:
tpdf(x,n),
holdon
x=-10:
0.1:
10;
n=2;y=tpdf(x,n);plot(x,y,'b');%blue
n=6;y=tpdf(x,n);plot(x,y,'r');%red
n=10;y=tpdf(x,n);plot(x,y,'c');%cyan
n=20;y=tpdf(x,n);plot(x,y,'k');%black
legend('n=2','n=6','n=10','n=20');
(6)F分布:
fpdf(x,n1,n2),
holdon
x=0:
0.1:
10;
n1=2;n2=6;y=fpdf(x,n1,n2);plot(x,y,'b');%blue
n1=6;n2=10;y=fpdf(x,n1,n2);plot(x,y,'r');%red
n1=10;n2=6;y=fpdf(x,n1,n2);plot(x,y,'c');%cyan
n1=10;n2=10;y=fpdf(x,n1,n2);plot(x,y,'k');%black
legend('n1=2;n2=6','n1=6;n2=10','n1=10;n2=6','n1=10;n2=10');
3.分布函数
【例03.01】求正态分布的累积概率值
设
,求
,
p1=normcdf(5,3,2)-normcdf(2,3,2)=0.5328
p1=normcdf(1,0,1)-normcdf(-0.5,0,1)=0.5328
p2=normcdf(10,3,2)-normcdf(-4,3,2)=0.9995
p3=1-(normcdf(2,3,2)-normcdf(-2,3,2))=0.6977
p4=1-normcdf(3,3,2)=0.500
4.逆分布函数,临界值
,
,
称之为临界值
【例03.02】求标准正态分布的累积概率值
y=0:
0.01:
1;
x=norminv(y,0,1);
【例03.03】求
分布的累积概率值
holdoff
y=[0.025,0.975];
x=chi2inv(y,9);
n=9;
x0=0:
0.1:
30;y0=chi2pdf(x0,n);
plot(x0,y0,'r');
x1=0:
0.1:
x
(1);y1=chi2pdf(x1,n);
x2=x
(2):
0.1:
30;y2=chi2pdf(x2,n);
holdon
fill([x1,x
(1)],[y1,0],'b');
fill([x
(2),x2],[0,y2],'b');
5.数字特征
函数名
调用形式
注释
sort
sort(x),sort(A)
排序,x是向量,A是矩阵,按各列排序
sortrows
sortrows(A)
A是矩阵,按各行排序
mean
mean(x)
向量x的样本均值
var
var(x)
向量x的样本方差
std
std(x)
向量x的样本标准差
median
median(x)
向量x的样本中位数
geomean
geomean(x)
向量x的样本几何平均值
harmmean
harmmean(x)
向量x的样本调和平均值
range
range(x)
向量x的样本最大值与最小值的差
skewness
skewness(x)
向量x的样本偏度
max
max(x)
向量x的最大值
min
min(x)
向量x的最小值
cov
cov(x),cov(x,y)
向量x的方差,向量x,y的协方差矩阵
corrcoef
corrcoef(x,y)
向量x,y的相关系数矩阵
【练习1.1】二项分布、泊松分布、正态分布
(1)对
二项分布,画出
的分布律点和折线;
(2)对
,画出泊松分布
的分布律点和折线;
(3)对
,画出正态分布
的密度函数曲线;
(4)调整
,观察折线与曲线的变化趋势。
【练习1.2】股票价格的分布
已知某种股票现行市场价格为100元/股,假设该股票每年价格增减是以
呈20%与-10%两种状态,
(1)求
年后该股票价格的分布,画出分布律点和折线;
(2)求
年之后的平均价格,画出平均价格的折线。
a=[1.2,1.2^2,1.2^3,1.2^4,1.2^5,1.2^6,1.2^7,1.2^8,1.2^9,1.2^10];
b=[0.9^10,0.9^9,0.9^8,0.9^7,0.9^6,0.9^5,0.9^4,0.9^3,0.9^2,0.9];
x=100*a.*b;
m=1:
10;
n=10;p=0.4;
y=binopdf(m,n,p);
plot(x,y,'b-',x,y,'r.')
x2=x.*y
x3=geomean(x2)
x4=[x3,x3];
y4=[0,0.3];
holdon
plot(x4,y4,'b-')
【练习1.3】条件密度函数
设数
在
上随机取值,当观察到
时,数
在区间
上随机取值,
(1)求
的密度函数
,画出密度函数曲线;
(2)模拟该过程,产生
个随机数
,在根据每个
的值,产生一个随机数
(共有
),画出
的样本密度曲线。
【练习1.4】二项分布、正态分布、切比雪夫不等式
在每次实验中,事件
发生的概率是0.5,求在1000次独立实验中,事件
发生的次数在475~525之间的概率。
(1)用二项分布公式精确计算;
(2)用正态分布近似计算;(3)用切比雪夫不等式进行估计。
>k=475:
525;
y=0.5.^k.*0.5.^(1000-k);
>>sum(y)
ans=
4.7596e-300
(2)
y1=normrnd(500,sqrt(250),1,1000);
j=0;
fork=1:
1000;
ify1(k)>=475&&y1(k)<=525
j=j+1;
end;
end;
m=j/1000
m=
0.8920
(3)
y1=binornd(1000,0.5,1,1000);
y2=ones(1,1000);
fork=1:
1000;
y2(k)=(y1(k)-500)^2;
end;
y=sum(y2)/25^2/1000
y=
0.4192
【练习1.5】正态分布
对正态分布的
法则进行演示,设
,
(1)画出其密度函数曲线
;
(2)分别对
,
,
进行填充;(3)分别求出随机变量
落在这三个区间内的概率;(4)产生
个随机数,计算其分别落在这三个区间的频率。
x=rand(1,10000);
fork=1:
10000;
y=x(k)+(1-x(k)).*rand(1,10000);
end
x1=0.05:
0.05:
1;
fork=0;j=1:
20;
fori=1:
10000;
ify(i)>=j&&y(i)<=j+0.1
k=k+1;
end;
end;
p1(j)=k/1000;
end;
plot(x1,p1,'b-')