数理统计课程设计.docx
《数理统计课程设计.docx》由会员分享,可在线阅读,更多相关《数理统计课程设计.docx(15页珍藏版)》请在冰豆网上搜索。
数理统计课程设计
题目3.求正态总体的均值差和方差的置信区间.通过实验加深对统计推断的基本概念的和基本思想的理解.置信水平0.95,0.90。
取不同值。
。
模拟次数大于100次。
㈠、问题分析:
1.在Matlab中模拟均值μ、标准差σ的产生
由于要求模拟次数大于100次,不妨就模拟120次,且要求μ,σ每次取不同的值,因此可以在Matlab中通过随机数产生器函数normrnd(mu,sigma,[m,n])得到120个(μ,σ)的不同组合。
2.置信区间的求法
总体参数的点估计作为待估参数的近似值给出了明确的数量描述,在统计分析中有多方面的应用.但点估计没有给出这种近似的精确程度和可信程度,使其在实际应用中受到很大的限制,区间估计却可以弥补这一不足。
所谓区间估计,就是用两个估计量
与
估计未知参数
,使得随机区间
能够包含未知参数的概率为指定的
。
即:
称满足上述条件的区间
为
的置信区间,称
为置信水平。
称为置信下限,
称为置信上限。
①标准差σ已知时正态总体均值μ的区间估计
问题假设检验:
H0:
μ=μ0←→H1:
μ≠μ;
(已知)
检验统计量为
,H0成立时
拒绝域:
查表求
满足:
对0于
,
。
所以对于总体
中的样本
,
的置信区间为:
其中
可以用Matlab中的命令norminv(1-a/2)计算。
②均值μ已知时正态总体标准差σ的区间估计
问题假设检验:
H0:
←→H1:
;μ=μ0(已知)
检验统计量为:
当H0成立时,
,
由此可查
临界值表,构造拒绝域。
由于
,查表求临界值
与
,其中查表可用Matlab中的命令chi2inv求出:
c1=chi2inv(1-alpha/2,n),
=chi2inv(alpha/2,n),使得
则
的置信区间为
。
㈡、算法步骤:
下面程序会用到的命令和变量的含义:
alpha为显著性水平
mu---均值μ的取值
sigma---标准差σ的取值
muci---均值μ的区间估计
sigmaci---标准差σ的区间估计
normrnd(μ,σ,[1,1])---产生一个服从正态分布N(μ,σ)的随机数
1.用随机数产生函数rand()产生μ,σ的一系列随机值;
2.由每一对μ,σ的值,用函数normrnd()产生服从正态分布μ,σ的500个样本;
3.根据μ,σ置信度为
的置信区间的求法,求出置信区间即可。
程序如下:
n=500;%样本容量
fori=1:
120%模拟120次
j=i%记录模拟的次数
mu=10*rand(1,1);%产生一次模拟的均值μ的随机值
sigma=50*rand(1,1);%产生一次模拟的标准差σ的随机值
rd=normrnd(mu,sigma,1,500);%产生服从一次模拟时正态分布N(mu,sigma)的500个随机数
[mu,sigma]%输出每一次模拟产生的mu随机值和sigma随机值
mu=mean(rd);%计算样本均值
foralpha=[0.05,0.1]%显著水平为0.05,0.1
alpha
u=norminv(1-alpha/2,0,1);%计算置信度为1-alpha/2的正态分布临界值
chi2=sum((rd-mu).^2);%计算离差的平方和
lambda1=chi2inv(1-alpha/2,n);%计算卡方分布的临界值
lambda2=chi2inv(alpha/2,n);
muci=[mu-u*sqrt(sigma^2/n),mu+u*sqrt(sigma^2/n)]%计算均值的置信区间
sigmaci=[sqrt(chi2/lambda1),sqrt(chi2/lambda2)]%计算方差的置信区间
end
end
运行结果(部分数据如下):
j=
1
ans=
9.501311.5569
alpha=
0.0500
muci=
7.76099.7869
sigmaci=
10.292811.6526
alpha=
0.1000
muci=
7.92389.6240
sigmaci=
10.392111.5325
j=
2
ans=
6.068424.2991
alpha=
0.0500
muci=
3.37427.6340
sigmaci=
21.505224.3462
alpha=
0.1000
muci=
3.71667.2915
sigmaci=
21.712724.0953
j=
3
ans=
8.913038.1048
alpha=
0.0500
muci=
6.580813.2608
sigmaci=
37.550842.5116
alpha=
0.1000
muci=
7.117812.7238
sigmaci=
37.913142.0734
j=
4
ans=
4.56470.9252
alpha=
0.0500
muci=
4.54344.7056
sigmaci=
0.88381.0005
alpha=
0.1000
muci=
4.55644.6925
sigmaci=
0.89230.9902
j=
5
ans=
8.214122.2352
alpha=
0.0500
muci=
7.873311.7712
sigmaci=
21.646924.5066
alpha=
0.1000
muci=
8.186611.4578
sigmaci=
21.855724.2540
j=
6
ans=
6.154339.5969
alpha=
0.0500
muci=
1.22328.1648
sigmaci=
37.722342.7057
alpha=
0.1000
muci=
1.78137.6067
sigmaci=
38.086342.2656
j=
7
ans=
9.218136.9104
alpha=
0.0500
muci=
7.287013.7576
sigmaci=
34.847539.4511
alpha=
0.1000
muci=
7.807213.2374
sigmaci=
35.183739.0445
j=
8
ans=
1.762720.2853
alpha=
0.0500
muci=
0.33633.8924
sigmaci=
18.695921.1658
alpha=
0.1000
muci=
0.62223.6065
sigmaci=
18.876320.9476
j=
9
ans=
9.354745.8452
alpha=
0.0500
muci=
3.988712.0256
sigmaci=
44.644850.5427
alpha=
0.1000
muci=
4.634811.3795
sigmaci=
45.075550.0218
j=
10
ans=
4.102744.6825
alpha=
0.0500
muci=
1.24129.0743
sigmaci=
42.775748.4267
alpha=
0.1000
muci=
1.87098.4446
sigmaci=
43.188447.9276
j=
11
ans=
0.578917.6434
alpha=
0.0500
muci=
-1.39281.7001
sigmaci=
17.126019.3884
alpha=
0.1000
muci=
-1.14421.4515
sigmaci=
17.291219.1886
j=
12
ans=
8.13170.4931
alpha=
0.0500
muci=
8.08468.1710
sigmaci=
0.47820.5413
alpha=
0.1000
muci=
8.09158.1640
sigmaci=
0.48280.5358
j=
13
ans=
1.388910.1383
alpha=
0.0500
muci=
0.85062.6279
sigmaci=
9.363510.6005
alpha=
0.1000
muci=
0.99352.4850
sigmaci=
9.453910.4913
j=
14
ans=
1.987230.1896
alpha=
0.0500
muci=
-2.12453.1679
sigmaci=
29.172433.0263
alpha=
0.1000
muci=
-1.69912.7424
sigmaci=
29.453932.6859
j=
15
ans=
2.72199.9407
alpha=
0.0500
muci=
1.06772.8103
sigmaci=
9.098010.2999
alpha=
0.1000
muci=
1.20782.6702
sigmaci=
9.185810.1938
j=
16
ans=
0.152737.3393
alpha=
0.0500
muci=
-0.12836.4175
sigmaci=
33.363537.7711
alpha=
0.1000
muci=
0.39795.8913
sigmaci=
33.685437.3818
j=
17
ans=
4.451046.5907
alpha=
0.0500
muci=
-1.09427.0733
sigmaci=
43.339949.0654
alpha=
0.1000
muci=
-0.43776.4168
sigmaci=
43.758048.5597
j=
18
ans=
4.659920.9325
alpha=
0.0500
muci=
2.74726.4167
sigmaci=
20.359123.0487
alpha=
0.1000
muci=
3.04226.1218
sigmaci=
20.555622.8112
j=
19
ans=
8.462226.2576
alpha=
0.0500
muci=
7.329311.9324
sigmaci=
24.019427.1925
alpha=
0.1000
muci=
7.699311.5624
sigmaci=
24.251126.9122
j=
20
ans=
2.026533.6069
alpha=
0.0500
muci=
-1.95813.9334
sigmaci=
31.240635.3677
alpha=
0.1000
muci=
-1.48453.4598
sigmaci=
31.542035.0031
(三)、算法分析与总结:
①本程序主要运用了for循环语句实现了100次以上的模拟,它能较好的解决由每一对随机值μ,σ对应的产生500个样本的问题。
另一种想法是可以由随机数产生函数直接产生关于μ,σ的一个数组,但接下来遇到了问题,无法用正态分布产生函数得到与每一对μ,σ值相对应的正态样本,这就无法求出置信区间了。
本程序在for语句的前提下,可以改进的是直接用Matlab中求置信区间函数求解,那样会简单很多,但为了说明置信区间的求解过程,选用的是本程序。
②对于求均值μ和标准差σ的点估计和区间估计的算法还可以进行改进:
[muhat,sigmahat,muci,sigmaci]=normfit(rd,0.05);此时可得到改进的更简单的程序:
n=500;%样本容量
fori=1:
120%模拟100次
j=i%记录模拟的次数
mu=10*rand(1,1);%产生一次模拟的均值μ的随机值
sigma=50*rand(1,1);%产生一次模拟的标准差σ的随机值
rd=normrnd(mu,sigma,1,500);%产生服从一次模拟时正态分布N(mu,sigma)的500个随机数
[mu,sigma]%输出每一次模拟产生的mu随机值和sigma随机值
foralpha=[0.05,0.1]%显著水平为0.05,0.1
alpha
[muhat,sigmahat,muci,sigmaci]=normfit(rd,alpha)%输出每一次模拟得到样本的均值μ和标准差σ的估计值均值μ和标准差σ的置信区间
end
end