实验6 参数估计
一、实验目的:
1. 掌握矩法估计与极大似然估计的求法;
2. 学会利用R软件完成一个和两个正态总体的区间估计; 3. 学会利用R软件完成非正态总体的区间估计; 4. 学会利用R软件进行单侧置信区间估计。
二、实验内容:
练习: 要求:①完成练习并粘贴运行截图到文档相应位置(截图方法见下),并将所有自己输入文字的字体颜色设为红色(包括后面的思考及小结),②回答思考题,③简要书写实验小结。④修改本文档名为“本人完整学号姓名1”,其中1表示第1次实验,以后更改为2,3,...。如文件名为“1305543109张立1”,表示学号为1305543109的张立同学的第1次实验,注意文件名中没有空格及任何其它字符。最后连同数据文件、源程序文件等(如果有的话,本次实验没有),一起压缩打包发给课代表,压缩包的文件名同上。 截图方法:
法1:调整需要截图的窗口至合适的大小,并使该窗口为当前激活窗口(即该窗口在屏幕最前方),按住键盘Alt键(空格键两侧各有一个)不放,再按键盘右上角的截图键(通常印有“印屏幕”或“Pr Scrn”等字符),即完成截图。再粘贴到word文档的相应位置即可。 法2:利用QQ输入法的截屏工具。点击QQ输入法工具条最右边的“扳手”图标其中的“截屏”工具。)
1. 自行完成教材P163页开始的4.1.3-4.3节中的例题。
2. (习题4.1)设总体的分布密度函数为
,选择
?(??1)x?f(x;?)???00?x?1,
其他,?2。现测得样?1和极大似然估计量?X1,X2,…,Xn 为其样本,求参数? 的矩估计量?本观测值为
0.1, 0.2, 0.9, 0.8, 0.7, 0.7
求参数 ? 的估计值。
?1。由于只有一个参数,因此只需要考虑E(X)=X。 解:先求参数? 的矩估计量???1而由E(X)的定义有:E(X)=
???x?f(x)dx?x?(??1)xdx???0??1??21??1 x|0???2??2因此
??11?1??X,解得??2。
??21?X?1的值。 以下请根据上式完成R程序,计算出参数? 的矩估计量?
源代码及运行结果:(复制到此处,不需要截图) x<-c(0.1, 0.2, 0.9, 0.8, 0.7, 0.7) >(2*mean(x)-1)/(1-mean(x)) [1] 0.3076923
?2。只需要考虑x?(0, 1)部分。依题意, 下面再求参数? 的极大似然估计量?此分布的似然函数为 L(?; x)=
?f(x;?)?(??1)(?x)?
niii?1i?1nn相应的对数似然函数为 ln L(?; x)=n ln(? +1)+ ? ln
?xi?1ni
n?lnL(?;x)n?? ln?xi=0 令
????1i?1解此似然方程得到???nln?xii?1n?1,或写为???n?lnxi?1n?1。
i?2lnL?0,从而? 使得L达到极大,即参数? 的极大似然估计量容易验证2???2??un?n?1。
i?lnXi?1n?2的值。 以下请根据上式完成R程序,计算出参数? 的极大似然估计量?源代码及运行结果:(复制到此处,不需要截图) >f<-function(a) 6/(a+1)+sum(log(x)) >uniroot(f,c(0,1)) $root
[1] 0.211182 $f.root
[1] -3.844668e-05 $iter [1] 5 $init.it [1] NA $estim.prec
[1] 6.103516e-05
3. (习题4.2)设元件无故障工作时间X具有指数分布,取1000个元件工作时间的
记录数据,经分组后得到它的频数分布为 组中值xi 频数vi 5 365 15 245 25 150 35 100 45 70 55 45 65 25 如果各组中数据都取为组中值,试用极大似然函数估计求 ? 的点估计。 提示:
①根据教材P168例4.7知,指数分布中参数 ? 的极大似然估计是n/
?Xi?1ni。
②利用rep()函数。
解:源代码及运行结果:(复制到此处,不需要截图)
x<-c(rep(5,365),rep(15,245),rep(25,150),rep(35,100),rep(45,70),rep(55,45),rep(65,25)) >1000/sum(x) [1] 0.05
4. (习题4.3)为检验某自来水消毒设备的效果,现从消毒后的水中随机抽取50升,
化验 每升水中大肠杆菌的个数(假设一升水中大肠杆菌个数服从Poisson分布),其化验结果如下:
大肠杆菌数/升 水的升数 0 17 1 20 2 10 3 2 4 1 5 0 6 0 试问平均每升水中大肠杆菌个数为多少时,才能使上述情况的概率为最大? 解:此题实际就是求泊松分布中参数 ? 的极大似然估计。 泊松分布的分布律为 P{X=k}=
?ke??k!, k=0,1,2,…, ? > 0
设x1,x2,…,xn 为其样本X1,X2,…,Xn 的一组观测值。
n于是此分布的似然函数为 L(?; x)= L(?; x1,…,xn)=
?i?1?xe??ixi!???xii?1nx1!?xn!e?n?
相应的对数似然函数为 ln L(?; x)= -n?+
?xi?1niln?-
?ln(x!)
ii?1n?lnL(?;x)1n令 ??n???xi=0
???i?1解此似然方程得到??x
?2lnL??X。 ?0,从而? 使得L达到极大,即参数? 的极大似然估计量?容易验证2???的值。同上题,也需要利以下请据此完成R程序,计算出参数? 的极大似然估计量?用rep()函数。
源代码及运行结果:(复制到此处,不需要截图)
x<-c(rep(0,17),rep(1,20),rep(2,10),rep(3,2),rep(4,1),rep(5,0),rep(6,0)) >mean(x) [1] 1
5. (习题4.4)利用R软件中的nlm()函数求解无约束优化问题
min f(x)=(-13+x1+((5-x2)x2-2)x2)2+(-29+x1+((x2+1)x2-14)x2)2,
取初始点x(0)=(0.5, -2)T。
提示:参考教材P173公式(4.13)对应的例题。 解:源代码及运行结果:(复制到此处,不需要截图) obj<-function(x){
f<-c(-13+x[1]+((5-x[2])*x[2]-2)* x[2],-29+ x[1]+(( x[2]+1)* x[2]-14) *x[2]) sum(f^2) }
> source(\> x0<-c(0.5, -2) > nlm(obj,x0) $minimum [1] 48.98425 $estimate
[1] 11.4127791 -0.8968052 $gradient
[1] 1.413268e-08 -1.462297e-07 $code [1] 1
$iterations [1] 16 结论:
$minimum是函数的最目标值,即f*=48.98425,$estimate是最优点的估计值,即x*=( 11.4127791, -0.8968052)T; $gradient是在最优点处(估计值)目标函数梯度值,即 f*(1.413268e-08, -1.462297e-07)T; $code是指标,这里是1,表示迭代成功;$iterations 是迭代次数,这里是16,表示迭代了16次迭代。
6. (习题4.5)正常人的脉搏平均每分钟72次,某医生测得10例四乙基铅中毒患者
的脉搏数(次/min)如下:
54 67 68 78 70 66 67 70 65 69
已知人的脉搏次数服从正态分布,试计算这10名患者平均脉搏次数的点估计和95%的区间估计。并作单侧区间估计,试分析这10患者的平均脉搏次数是否低于正常人的平均脉搏次数。
提示:此题是一个正态总体的估计问题,且由于总体方差未知,因此可以直接使用R语言中t.test()函数进行分析。
解:源代码及运行结果:(复制到此处,不需要截图) x<-c(54 , 67 , 68 , 78 ,70 , 66 , 67 , 70 , 65, 69)
> t.test(x) #t.rest()做单样本正态分布区间估计
One Sample t-test
data: x
t = 35.947, df = 9, p-value = 4.938e-11
alternative hypothesis: true mean is not equal to 0 95 percent confidence interval: 63.1585 71.6415 sample estimates: mean of x 67.4
> t.test(x,alternative=\,mu=72) #t.rest()做单样本正态分布单侧间估计 One Sample t-test
data: x
t = -2.4534, df = 9, p-value = 0.01828
alternative hypothesis: true mean is less than 72 95 percent confidence interval: -Inf 70.83705 sample estimates: mean of x 67.4 结论:
双侧区间估计:平均脉搏点估计为67.4,95%区间估计为63.1585 71.6415; 单侧区间估计:p= 0.01828<0.05,拒绝原假设,平均脉搏低于正常人。
7. (习题4.6)甲、乙两种稻种分别播种在10块试验田中,每块试验田甲、乙稻种各
种一半。假设两稻种产量X, Y均服从正态分布,且方差相等。收获后10块试验田的产量如下所示(单位:千克)。 甲种 140 137 136 140 145 148 140 135 144 141 乙种 135 118 115 140 128 131 130 115 131 125 求出两稻种产量的期望差?1-?2的置信区间(? =0.05)。 提示:此题是两个正态总体的区间估计问题,且由于两总体方差未知,因此可以直接使用R语言中t.test()函数进行分析。t.test()可做两正态样本均值差的估计。注意此例中两样本方差相等。参考教材P185倒数第四行开始至P186。
解:源代码及运行结果:(复制到此处,不需要截图) > x<-c(140,137,136,140,145,148,140,135,144,141) > y<-c(135,118,115,140,128,131,130,115,131,125) > t.test(x,y,var.equal=TRUE)
Two Sample t-test