Matlab 概率论与数理统计一、matlab基本操作
1.画图
【例01.01】简单画图
hold off;
x=0:0.1:2*pi;
y=sin(x);
plot(x,y,'-r');
x1=0:0.1:pi/2;
y1=sin(x1);
hold on;
fill([x1, pi/2],[y1,1/2],'b');
【例01.02】填充,二维均匀随机数
hold off;
x=[0,60];y0=[0,0];y60=[60,60];
x1=[0,30];y1=x1+30;
x2=[30,60];y2=x2-30;
xv=[0 0 30 60 60 30 0];yv=[0 30 60 60 30 0 0];
fill(xv,yv,'b');
hold on;
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([-20 80 -20 80 ]);
2. 排列组合
C=nchoosek(n,k):k
n C C =,例nchoosek(5,2)=10, nchoosek(6,3)=20.
prod(n1:n2):从n1到n2的连乘
【例01.03】至少有两个人生日相同的概率
公式计算n
n n
n N
N
n N N N N n N N N C n p )1()1(1)!
(!
1!1+--?-=--=-
=
365364
(3651)365364
3651
11365365365365
rs rs rs ?-+-+=-
=-?
rs=[20,25,30,35,40,45,50]; %每班的人数 p1=ones(1,length(rs)); p2=ones(1,length(rs));
% 用连乘公式计算
for i=1:length(rs)
p1(i)=prod(365-rs(i)+1:365)/365^rs(i); end
% 用公式计算(改进) for i=1:length(rs)
for k=365-rs(i)+1:365
p2(i)=p2(i)*(k/365);
end ;
end
% 用公式计算(取对数) for i=1:length(rs)
二、随机数的生成
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.其它分布随机数
一维随机变量的概率分布 1. 离散型随机变量的分布率
(1) 0-1分布 (2) 均匀分布
(3) 二项分布:binopdf(x,n,p),若~(,)X B n p ,则{}(1)k k n k
n P X k C p 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πλ,则{}
! k e
P X k
k
λ
λ-
==
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),则1
{}(1)k
P X k p p-
==-
(6)超几何分布:hygepdf(x,N,M,n),则{}
k n k
M N M
n
N
C C
P X k
C
-
-
==
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 ]
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),
1
()
a x b
f x b a
?
≤≤
?
=-
?
??其它
a=0;b=1;x=a:0.1:b;
y= unifpdf (x,a,b);
(2)正态分布:normpdf(x,mu,sigma),
2
2
1
()
2
()
2
x
f x eμ
σ
πσ
--
=
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),
1
1
()
x
e a x b
f x
θ
θ
-
?
≤≤
?
=?
?
?其它
x=0:0.1:10;mu=1/2;
y= exppdf(x,mu);
plot(x,y,'b-',x,y,'r*')
(4)2
χ分布:chi2pdf(x,n),
1
22
2
1
(;)2(2)
00
n x
n
x e x
f x n n
x
--
?
≥
?
=Γ
?
?<
?
hold on
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),
22
((1)2)
(;)1
(2)
n x
f x n
n
n n
π
-
?
Γ+
=+?
Γ?
hold on
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