资源描述
概 率 统 计
实验指导书
理学院实验中心
概率统计教研室编写
实验一 各种分布的密度函数与分布函数
【实验类型】(验证性)
【实验学时】4
【实验内容】1.熟悉数学软件Matlab中Statistics工具箱里的各种密度函数和分布函数的作图命令并观看各种图形。
2.会用概率分布函数(cdf)求各种分布中的不同事件的概率;会用逆概率分布函数(inv)求各种分布的分位点。
【实验前的预备知识】统计工具箱简介
统计工具箱是一套建立于Matlab数值计算环境的统调分析工具,能够支持范围广泛的统计计算任务,提供工程和科学统计的基本能力。其中包括200多个函数,主要文持以下各方面的内容:
1.概率分布——提供了20种概率分布类型,其中包括连续分布和离散分布,而且各种分布类型均给出5个有用的函数,即:概率密度函数(pdf)、概率分布函数(cdf)、逆概率分布函数(inv)、随机数产生器(rnd)和均值与方差函数(stat)。
2.参数估计——依据特定分布的原始数据,可以计算分布参数的估计值及置信区间。
对于离散分布和连续分布,其相应的概率密度函数有各自不同的含义。
离散型随机变量:它是只有有穷个或可列个可能值的随机变量,其概率密度函数是观察到某特定值的概率。
连续型随机变量:如果存在一非负函数,使对于任意实数在区间上的取值的概率为:,则函数称作的概率密度函数,它满足:。
【实验方法或步骤】
在统计工具箱中,对每种分布的函数进行调用的格式是统一的,具体调用格式参见下表:
有关Matlab命令调用格式一览表
分布
参数
求
求密度函数值
求期望、方差
二项分布
0<<1
P=binocdf(a,n,p)
y=binopdf(a,n,p)
[M,V]=binostat(n,p)
泊松分布
>0
P=poisscdf(a,)
y=poisspdf(a,)
[M,V]=poisstat()
几何分布
P
P=geocdf(a,p)
Y=geopdf(a,p)
[M,V]=geostat(p)分布律
均匀分布
b,c
P=unifcdf(a,b,c)
Y=unifpdf(a,b,c)
[M,V]=unifstat(a,b)
正态分布
,>0
P=normcdf(a,)
y=normpdf(a,)
[M,V]= normstat()注意不是
指数分布
>0
P=expcdf(a,)
y=exppdf(a,)
[M,V]=expstat()密度函数
分布
P=chi2cdf(a,n)
y=chi2pdf(a,n)
[M,V]=chi2stat(n)
t分布
P=tcdf(a,n)
y=tpdf(a,n)
[M,V]=tstat(n)
F分布
P=fcdf(a,)
y=fpdf(a,)
[M,V]=fstat()
分布
逆概率分布函数
随机数发生器(产生随机数)
二项分布
binoinv
binornd
泊松分布
poissinv
poissrnd
几何分布
hygeinv
hygernd
均匀分布
unifinv
unifrnd
正态分布
norminv
normrnd
指数分布
expinv
exprnd
分布
chi2inv
chi2rnd
T分布
tinv
trnd
F分布
finv
frnd
一、下面说明pdf函数调用方法。
(1)功能:确定分布的概率密度函数。
格式:f=normpdf(X,Al,A2,A3)
说明:f=namepdf(X,Al,A2,A3)提供了求取统计工具箱中正态分布的概率密度值功能。其中,‘name’为特定分布的名称,如‘Norm’、‘bino’等,具体分布名称见上表。X为分布函数的自变量X的取值矩阵,而A1、A2、A3分别为相应的分布参数值。注意:由于各种分布所含参数不同,A1、A2、A3的含义各不相同,也并不一定都是必须的;对于任一分布,A1、A2、A3的值具体如何给出,可参见相应分布的特定概率密度函数。f存放结果为概率密度值矩阵。
例1:函数normpdf( )
输入:X=[-3:0.5:3]X是从-3到3步长为0.5的点集,缺省0.5定义步长为1,括号可以为( ),也可以不写。
;
f=normpdf(X,0,1)
输出为:
f =
Columns 1 through 8
0.0044 0.0175 0.0540 0.1295 0.2420 0.3521 0.3989 0.3521
Columns 9 through 13
0.2420 0.1295 0.0540 0.0175 0.0044
上例中,计算结果变量f包含了由参数0和1(a=0,=1)所确定的正态分布函数在X取值上的概率密度。
除了表中列出的特定分布的pdf函数外,统计工具箱还给出了通用的pdf调用函数,函数名即为pdf。
(2)功能:可选分布的通用概率密度函数。
格式:Y=pdf(‘name’,X,Al,A2,A3)
说明:Y=pdf(‘name’,X,Al,A2,A3)提供了求取统计工具箱中任一分布的概率密度值功能。其中,‘name’为特定分布的名称,如‘Norma’、‘bino’等。X为分布函数的自变量X的取值矩阵,而A1、A2、A3分别为相应的分布参数值。注意:由于各种分布所含参数不同,A1、A2、A3的含义各不相同,也并不一定都是必须的;对于任一分布,A1、A2、A3的值具体如何给出,可参见相应分布的特定概率密度函数。Y存放结果,为概率密度值矩阵。
例2:函数pdf( )
输入:X=(-3:0.5:3); f=pdf('norm',X,0,1)
输出:同上例
输入:X=-1:0.5:6;f=pdf('poiss',X,5)
输出:
f =
Columns 1 through 8
0 0 0.0067 0 0.0337 0 0.0842 0
Columns 9 through 15
0.1404 0 0.1755 0 0.1755 0 0.1462
输入:X=-1:0.5:6;f=poisspdf(X,5)
输出:同上例
例3:一个质量检验员每天检验500个零件。如果1%的零件有缺陷,一天内检验员没有发现有缺陷零件的概率是多少?检验员发现有缺陷零件的数量最有可能是多少?
解:计算一天内检验员没有发现有缺陷零件的概率
输入:Y=binopdf(0,500,0.01)
输出:Y=0.0066
计算检验员发现有缺陷零件的数量:
输入:y=binopdf([0:500],500,0.01);[p,k]=max(y)
输出:p=0.1764
k=6
注:因为数组下标i=1时代表发现0个缺陷零件的概率,所以检验员发现有缺陷零件的数量最有可能是i-l=5。
例4:作图:画正态分布的概率密度函数图
输入:x=(0:0.01:10);
y1=normpdf(x,3,1);
y2=normpdf(x,4,2);
plot(x,y1,'k:',x,y2,'k-')
xlabel('\itx');ylabel('概率密度\itp');
legend('N(3,1)','N(4,4)');
输出:
例5:作图:比较具有相同自由度(n=10)的非中心t分布(非中心参数DELTA=1)和t分布。
输入:x=(-5:0.1:5);
p1=nctpdf(x,10,1);
p=tpdf(x,10);
plot(x,p,'k:',x,p1,'k-')
xlabel('\itx');ylabel('概率密度\itp');
legend('t分布','非中心t分布');
输出:
二、举例演示其它四个函数的应用
输入:y=unifcdf(1:6,2,6)或者y=cdf('unif',1:6,2,6)
输出:y =
0 0 0.2500 0.5000 0.7500 1.0000
输入:y(5)-y(3)
输出:ans = 0.5000
输入:x=unifinv(0.5,2,6)
输出:x = 4
输入:[m,v]=unifstat(2,6)
输出:m = 4
v = 1.3333
输入:x=unifrnd(2,6,3,4) 参数位置和其他几个函数不同,先写分布的参数,再写输出的格式,本命令含义是输出3行4列参数为2,6的均匀分布的数据。
输出:x =
5.8005 3.9439 3.8259 3.7788
2.9246 5.5652 2.0740 4.4617
4.4274 5.0484 5.2856 5.1677
输入:x=(0:0.1:8);
y1=unifpdf(x,2,6);
y2=unifcdf(x,2,6);
plot(x,y1,'k:',x,y2,'k-');
xlabel('\itx');
legend('U(2,6)的密度函数','U(2,6)的分布函数')
输出:
作业:实验报告要求
1、在计算机上实现相关知识中的三个实例,体会MATLAB有关概率统计函数的用法,计算以下常见随机变量分布的期望和方差并将程序给出。
2、某人向空中抛硬币100次,落下为正面的概率为0.5。记正面向上的次数为X,(1)计算和的概率。(2)给出随机变量X的概率分布函数图像和概率密度函数图像。
3、比较自由度是10的t分布和标准正态分布的概率密度图像(要求写出程序并作图)。
实验二、 抽样分布、参数估计及假设检验实验
【实验类型】(综合性)
【实验学时】 4
【实验内容】
1、培养学生建立概率统计模型的能力
2、熟悉用数理统计中常用的Matlab命令格式、程序及运行结果
3、学会用Matlab统计箱来完成数据统计描述和分析方法
4、给出100名学生的身高和体重(单位 厘米 千克)
①求出以下统计量:平均值(mean),中位数(median),样本标准差(std),最大值(max),最小值(min) ,极差(range)。
②求出频数分布及其直方图.
5、根据这些数据对学生的平均身高和体重作出估计,并给出估计的误差范围;学生10年前作过普查,学生的平均身高为167.5cm,平均体重为60.2kg,试根据这次抽查的数据,对学生的平均身高和体重有无明显变化作出结论。
【实验前的预备知识】
直方图的作法;样本及抽样分布的概念;
参数估计理论;假设检验思想和方法。
【实验方法或步骤】
1.将下表中的数据写入记事本中(sj.txt中20行10列或者sj1.txt中100行2列)并存放于MATALAB的WORK文件夹里。
身高
体重
身高
体重
身高
体重
身高
体重
身高
体重
172
75
171
62
166
62
160
55
155
57
173
58
166
55
170
63
167
53
172
60
178
60
173
73
163
47
165
66
170
60
163
50
172
57
182
63
171
59
177
64
169
55
168
67
168
65
175
67
176
64
168
50
161
49
169
63
171
61
178
64
177
66
170
58
173
67
172
59
170
62
172
59
177
58
176
68
175
68
184
70
169
64
165
52
164
59
173
74
172
69
169
52
173
57
171
61
166
70
163
57
170
56
160
65
165
58
177
66
169
63
176
60
177
67
172
56
165
56
166
49
171
65
169
62
170
58
172
64
169
58
167
72
175
76
164
59
166
63
169
54
167
54
179
62
176
63
182
69
186
77
166
76
169
72
173
59
169
65
171
71
167
47
168
65
165
64
168
57
176
57
170
57
158
51
165
62
172
53
169
66
169
58
172
50
162
52
175
75
174
66
167
63
166
50
174
64
168
62
170
59
功能:导入记事本中的数据文件
格式:M=dlmread('sj.txt')或者M=load('sj.txt')
说明:把记事本格式下的数据sj写入M中,各列之间用空格或者逗号分开,若用Tab键分隔,命令为M=dlmread('sj.txt','\t') ,M返回的是一个20行10列的矩阵。
为了得到100个学生的身高和体重各为一列的矩阵,应做如下的改变:
输入:
student=[M(:,[1,2]);M(:,[3,4]);M(:,[5,6]);M(:,[7,8]);M(:,[9,10])];
输出:student是一个1002矩阵,第一列是学生的身高,第二列是学生的体重
以上的这一部分所有操作可以通过直接输入M=dlmread('sj1.txt')来实现。
数据的导入也可以通过点击MATLAB菜单file中的import data来插入(Excel格式的数据也行),只是找到数据后要注意文件名会发生变化,然后在命令窗口直接输入文件名即可,不必输入文件名的格式后缀。
2、求出样本数字特征平均值(mean),中位数(median),样本标准差(std),最大值(max),最小值(min) ,极差(range)。
输入:x1=mean(student(:,1))
x2=median(student(:,1))
x3=std(student(:,1))
std(x,0)标准根方差,0可缺省;std(x,1)y样本二阶中心矩的开方。
x4=max(student(:,1))
x5=min(student(:,1))
x6=range(student(:,1))
3、作频数表及直方图.
功能:给出频数表
格式:[N,X]=hist(data,k)
说明:一列数据data的频数表,它将区间[min(data),max(data)]等分为k份(缺省时k设定为10),N返回k个小区间内的频数,X返回k个小区间的中点(组中值)。
功能:频数的直方图
格式:hist(data,k)
说明:一列数据data的频数直方图。
输入:[N,X]=hist(student(:,1)Student中的第一列数。
)
输出:N =2 3 6 18 26 22 11 8 2 2
X =Columns 1 through 8
156.5500 159.6500 162.7500 165.8500 168.9500 172.0500 175.1500 178.2500
Columns 9 through 10
181.35 184.4500
输入:hist(student(:,1));xlabel('身高');ylabel('频数')
输出:
输入:[N,X]=hist(student(:,2))
输出:
N =
8 6 8 21 13 19 11 5 4 5
X =
Columns 1 through 8
48.5000 51.5000 54.5000 57.5000 60.5000 63.5000 66.5000 69.5000
Columns 9 through 10
72.5000 75.5000
输入:hist(student(:,2));xlabel('体重');ylabel('频数')
输出:
身高频数
2
3
6
18
26
22
11
8
2
2
身高/cm
156.55
159.65
162.75
165.85
168.95
172.05
175.15
178.25
181.35
184.45
体重频数
8
6
8
21
13
19
11
5
4
5
体重/kg
48.50
51.50
54.50
57.50
60.50
63.50
66.50
69.50
72.50
75.50
表1 100名学生的身高、体重频数表
4、对学生的平均身高、体重作出估计,在MATLAB统计工具箱中,有专门计算总体均值、标准差的点估计和区间估计的函数.这里假定学生的身高和体重均服从正态分布,至于其他的常见分布,在MATLAB统计工具箱中也有类似的命令.
功能:正态总体下数据的均值,标准差以及区间估计
格式:[mu sigma muci sigamaci]=normfit(x,alpha)
说明:其中x为样本(数组或矩阵),alpha为显著水平(缺省时设定为0.05),返回总体均值和标准差的点估计mu和sigma,及总体均值和标准差的区间估计muci和sigamaci,当x为矩阵时返回行向量.
输入:[mu sigma muci sigamaci]=normfit(student(:,1))
输出:mu = 170.220 sigma = 5.3909
muci = 169.1503 171.2897 sigamaci = 4.7333 6.2625
输入:[mu sigma muci sigamaci]=normfit(student(:,2))
输出:mu = 61.2700 sigma = 6.8929
muci = 59.9023 62.6377 sigamaci = 6.0520 8.0073
表2 学生的身高、体重均值和标准差的点估计和区间估计
身高/cm
体重/kg
均值点估计
均值区间估计
标准差点估计
标准差区间估计
170.220
[169.1503,171.2897]
5.3909
[4.7333,6.2625]
61.270
[59.9023,62.6377]
6.8929
[6.0520,8.0073]
5、给出假设检验,以正态总体均值为例(其它检验问题类似可得):
功能:总体方差已知时用z检验
格式:[h,p,ci]=ztest(x,mu,sigma,alpha,tail)
说明:其中输入参数x是样本,mu是中的,sigma是总体标准差,alpha是显著性水平(alpha缺省时设定为0.05),tail是对备选假设的选择:为时用tail=0(可缺省);为时用tail=1;为时用tail=-1。输出参数h=0表示接受,h=1表示拒绝,p表示在下样本均值出现的概率,p越小越值得怀疑,ci是的置信区间。
功能:总体方差未知时用t检验
格式:[h,p,ci]=ttest(x,mu,alpha,tail)
说明:与上面的ztest相比,除了不需要输入总体标准差,其余全都一样。
为回答学生的身高和体重的问题:根据这次抽查的数据,学生的平均身高和体重与10年前普查的结果(平均身高167.5cm、平均体重60.2kg)有无明显变化,做假设检验:
身高: :;:
体重: :;:
输入:[h,p,ci]=ttest(student(:,1),167.5)
输出:h = 1 p = 2.0546e-006
ci = 169.1503 171.2897
输入:[h,p,ci]=ttest(student(:,2),60.2)
输出:h = 0 p = 0.1238
ci = 59.9023 62.6377
由此可以看出:根据这次抽查的数据,学生的平均身高与10年前普查的结果(平均身高167.5cm、)有明显的变化,但是体重与10年前普查的结果(平均体重60.2kg)有无明显变化。
作业:实验报告要求
1、在计算机上实现上面几个实例,体会MATLAB有关概率统计函数的用法,并给出指导书中没有输出结果的那几个样本数字特征的结果。
2、一批刚件的20个样品的屈服点为
4.98,5.11,5.20,5.20,5.11,5.00,5.35,5.63,4.88,5.27,5.38,5.46,5.27,5.23,4.96,5.15,4.77,5.35,5.38,5.54,设屈服点总体服从正态分布,求屈服点总体均值和方差的置信度为0.95的置信区间。
3、已知某批矿砂的5个样品中的镍含量,经测定为(%)
3.25 3.27 3.24 3.26 3.24
设测定值总体服从正态分布,问在置信水平下能否接受假设:这批矿砂的镍含量的均值为3.25。
4、从一批钢管中抽取10根,测得其内径(单位:mm)为:
100.36, 100.31, 99.99, 100.11, 100.64,
100.85, 99.42, 99.91, 99.35, 100.10
设这批钢管内直径服从正态分布,试分别在下列条件下检验假设()
(1)已知;(2)未知。
5、对冷却到的样品用A,B两种测量方法测量其融化到时的潜能,数据如下:
方法A:79.98,80.04,80.02, 80.04, 80.03, 80.03, 80.04,
79.97, 80.05,80.03, 80.02, 80.00, 80.02
方法B:80.02, 79.94, 79.98, 79.97, 80.03, 79.95, 79.97, 79.97
假设它们服从正态分布,方差相等,试检验:两种测量方法的平均性能是否相等?
概率分布中未知参数的点估计和区间估计(置信度为1-)
分布
参数 命令格式
二项分布
p [p,pc]= mle(‘bioomial’,x, ,n)
泊松分布
[p3,pc3]= poissfit(x, )
均匀分布
a,b [p1,p2,pc1,pc2]=unifit(x, )
指数分布
[p,pc]=expfit(x, )
正态分布
[p1,p2,pc1,pc2]=normfit(x, )
Matlab中有关假设检验的命令格式及说明:
单个正态总体的检验
[h,p,ci]=ztest(x,mu,sigma,alpha,tail)
单个正态总体的检验
[h,p,ci]=ttest(x,mu,alpha,tail)
两个正态总体均值的检验
总体方差相等
[h,p,ci]=ttest(x,y,alpha,tail)
19
展开阅读全文